精华内容
下载资源
问答
  • 数据结构 - 逻辑结构和存储结构

    万次阅读 2017-10-15 22:18:18
    程序=算法+数据结构 N.沃思(Niklaus Wirth)教授提出:  程序=算法+数据结构  以上公式说明了如下两个问题:  (1)算法决定如何构造和组织数据(算法→数据结构)。  (2)算法的选择依赖于作为基础的...

    程序=算法+数据结构

    N.沃思(Niklaus Wirth)教授提出: 
    程序=算法+数据结构 
    以上公式说明了如下两个问题: 
    (1)算法决定如何构造和组织数据(算法→数据结构)。 
    (2)算法的选择依赖于作为基础的数据结构(数据结构→算法)。 
    软件=程序+文档(软件工程的观点)


    求解非数值计算的问题

    主要考虑的是设计出合适的数据结构及相应的算法。 
    即:首先要考虑对相关的各种信息如何表示、组织和存储? 
    因此,可以认为:数据结构是一门研究非数值计算的程序设计问题中计算机的操作对象以及它们之间的关系和操作的学科。


    数据结构基本概念

    几个概念: 
    数据(Data):是客观事物的符号表示。在计算机科学中指的是所有能输入到计算机中并被计算机程序处理的符号的总称。 
    数据元素(Data Element):是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。 
    数据项是数据的不可分割的最小单位。一个数据元素可由若干个数据项组成。 
    数据对象(Data Object):是性质相同的数据元素的集合。是数据的一个子集。

    什么是数据结构? 
    定义1—- 
    是相互之间存在一种或多种特定关系的数据元素的集合。 
    定义2—- 
    按某种逻辑关系组织起来的一批数据(或称带结构的数据元素的集合)应用计算机语言并按一定的存储表示 方式把它们存储在计算机的存储器中,并在其上定义了一个运算的集合。


    逻辑结构

    数据元素间抽象化的相互关系(简称为逻辑结构)。 
    与数据的存储无关,独立于计算机,它是从具体问题抽象出来的数学模型。 
    存储结构(物理结构)—- 
    数据元素及其关系(数据的逻辑结构)在计算机存储器中的存储形式。 
    是逻辑结构用计算机语言的实现,它依赖于计算机语言。 
    运算(算法)

    逻辑结构—划分方法一 
    (1)线性结构—- 
    有且仅有一个开始和一个终端结点,并且所有结点都最多只有一个直接前趋和一个后继。 
    例如:线性表、栈、队列、串 
    (2)非线性结构—- 
    一个结点可能有多个直接前趋和直接后继。 
    例如:树、图等。

    逻辑结构—划分方法二 
    一、集合 结构中的数据元素除了同属于一种类型外,别无其它关系。 
    二、线性结构 结构中的数据元素之间存在一对一的关系。 
    三、树型结构 结构中的数据元素之间存在一对多的关系。 
    四、图状结构或网状结构 结构中的数据元素之间存在多对多的关系。


    存储结构

    存储结构两方面的内容: 
    (1)数据元素自身值的表示(数据域) 
    (2)该结点与其它结点关系的表示(链域) 
    两种基本的存储方法: 
    (1)顺序存储方法(顺序存储结构) 
    (2)链接存储方法(链式存储结构) 
    同一种逻辑结构可采用不同的存储方法(以上两种之一或组合),这主要考虑的是运算方便及算法的时空要求。


    数据结构的运算(对数据的操作)

    ⑴ 建立(Create)一个数据结构; 
    ⑵ 消除(Destroy)一个数据结构; 
    ⑶ 从一个数据结构中删除(Delete)一个数据元素; 
    ⑷ 把一个数据元素插入(Insert)到一个数据结构中; 
    ⑸ 对一个数据结构进行访问(Access); 
    ⑹ 对一个数据结构(中的数据元素)进行修改(Modify) 
    ⑺ 对一个数据结构进行排序(Sort); 
    ⑻ 对一个数据结构进行查找(Search)。


    数据类型及抽象数据类型

    数据类型:在一种程序设计语言中,变量所具有的数据种类。 
    例1、 在FORTRAN语言中,变量的数据类型有整型、实型、和复数型 
    例2、在C语言中 
    数据类型:基本类型和构造类型 
    基本类型:整型、浮点型、字符型 
    构造类型:数组、结构、联合、指针、枚举型、自定义 
    注意:数据结构不同于数据类型,也不同于数据对象,它不仅要描述数据对象的数据类型,而且要描述数据对象各元素之间的相互关系。

    抽象数据类型(Abstract Data Type ,简称ADT):是指一个数学模型以及定义在该模型上的一组操作。 
    ADT的定义仅是一组逻辑特性描述, 与其在计算机内的表示和实现无关。因此,不论ADT的内部结构如何变化,只要其数学特性不变,都不影响其外部使用。 
    ADT的形式化定义是三元组:ADT=(D,S,P) 
    其中:D是数据对象,S是D上的关系集,P是对D的基本操作集。 
    ADT的一般定义形式是: 
    ADT <抽象数据类型名>{ 
    数据对象: <数据对象的定义> 
    数据关系: <数据关系的定义> 
    基本操作: <基本操作的定义> 
    } ADT <抽象数据类型名>

    其中数据对象和数据关系的定义用伪码描述。 
    基本操作的定义是: 
    <基本操作名>(<参数表>) 
    初始条件: <初始条件描述> 
    操作结果: <操作结果描述> 
    初始条件:描述操作执行之前数据结构和参数应满足的条件;若不满足,则操作失败,返回相应的出错信息。 
    操作结果:描述操作正常完成之后,数据结构的变化状况和 应返回的结果。


    算法

    算法的概念和描述: 
    什么是算法? 
    所谓算法(Algorithm)是对特定问题求解方法(步骤)的一种描述。 
    为解决某一特定问题而由若干条指令组成的有穷序列。 
    适合于计算机程序实现的求解问题的方法

    算法的概念和描述: 
    一个算法必须满足以下五个准则: 
    (1)有穷性—执行了有限条指令后一定要终止。 
    (2)确定性(无二义)— 
    算法的每一步操作都必须有确切定义,不得有任何歧义性。 
    (3)可(能)行性— 
    算法的每一步操作都必须是可行的,即每步操作均能在有限时间内完成。 
    (4)输入数据— 
    一个算法有n(n>=0)个初始数据的输入。 
    (5)输出数据— 
    一个算法有一个或多个与输入有某种关系的有效信息的输出。

     常见函数的时间复杂度按数量递增排列及增长率。 
    常数阶O(1) 
    对数阶O(log2n) 
    线性阶O(n) 
    线性对数阶O(nlog2n) 
    平方阶O(n2) 
    立方阶O(n3) 
    …… 
    k次方阶O(nk) 
    指数阶O(2n)


    空间复杂度(Space complexity)

    :是指算法编写成程序后,在计算机中运行时所需存储空间大小的度量。记作: S(n)=O(f(n)) 
    其中: n为问题的规模(或大小) 
    该存储空间一般包括三个方面: 
    指令常数变量所占用的存储空间; 
    输入数据所占用的存储空间; 
    辅助(存储)空间。 
    一般地,算法的空间复杂度指的是辅助空间。 
    一维数组a[n]: 空间复杂度 O(n) 
    二维数组a[n][m]: 空间复杂度 O(n*m)



    展开全文
  • ① 集合 集合中任何两个数据元素之间都没有逻辑关系,组织形式松散. ② 线性结构 线性结构中的 结点...集合:结构中的数据元素之间除了同属于一类型外,别无其它关系 线性结构结构中的数据元素之间存在一对一的...
    ① 集合 集合中任何两个数据元素之间都没有逻辑关系,组织形式松散.
    
    ② 线性结构 线性结构中的 结点按逻辑关系依次排列形成一个“锁链”.
    ③ 树形结构 树形结构具有分支、层次特性,其形态有点象自然界中的树.
    ④ 图状结构 图状结构中的结点按逻辑关系互相缠绕,任何两个结点都可以邻接

    集合:结构中的数据元素之间除了同属于一种类型外,别无其它关系
    线性结构:结构中的数据元素之间存在一对一的关系
    树形结构: 结构中的数据元素之间存在一对多的关系
    图状结构或是网状结构:结构中的数据元素之间存在多对多的关系
    展开全文
  • 数据的逻辑结构指的是这个数据的组织方式,存储结构指的是它的存储方式。 比如队列(逻辑结构),可以用数组(连续)存储,也可以用链表(不连续)存储。 数据结构方面的储存结构分类 顺序存储方法它是把逻辑上...

    一种数据的逻辑结构指的是这个数据的组织方式,存储结构指的是它的存储方式。
    比如队列(逻辑结构),可以用数组(连续)存储,也可以用链表(不连续)存储。

    数据结构方面的储存结构分类
    顺序存储方法它是把逻辑上相邻的结点存储在物理位置相邻的存储单元里,结点间的逻辑关系由存储单元的邻接关系来体现,由此得到的存储表示称为顺序存储结构。顺序存储结构是一种最基本的存储表示方法,通常借助于程序设计语言中的数组来实现。
    链接存储方法它不要求逻辑上相邻的结点在物理位置上亦相邻,结点间的逻辑关系是由附加的指针字段表示的。由此得到的存储表示称为链式存储结构,链式存储结构通常借助于程序设计语言中的指针类型来实现。

    逻辑结构有四种基本类型:集合结构、线性结构、树状结构和网络结构。表和树是最常用的两种高效数据结构,许多高效的算法能够用这两种数据结构来设计实现。表是线性结构的(全序关系),树(偏序或层次关系)和图(局部有序(weak/local order))是非线性结构。

    展开全文
  • 数据结构之逻辑结构与物理结构(存储结构)

    万次阅读 多人点赞 2018-06-27 21:22:42
    1.逻辑结构逻辑结构分为四类型:集合结构,线性结构,树形结构,图形结构。1.1 所谓集合结构:表面意思,没有什么深刻意义,就是数据元素同属一个集合,单个数据元素之间没有任何关系。如下图所示。 1.2 线性...

    1.逻辑结构:

    逻辑结构分为四种类型:集合结构,线性结构,树形结构,图形结构。

    1.1 所谓集合结构:

    表面意思,没有什么深刻意义,就是数据元素同属一个集合,单个数据元素之间没有任何关系。如下图所示。

                                                             

    1.2 线性结构:

    类似于线性关系,也就是说,线性结构中的数据元素之间是一对一的关系。注意:重点在一对一。如下图所示。


                                                   

    1.3 树形结构:

    树形结构中的数据元素之间存在一对多的关系。(各元素及元素关系所组成图形类似于树状图)。注意:关系为一对多。如下图所示。


                                                        

    1.4 图形结构:

    数据元素之间是多对多的关系。如下图所示。

         

                                            

    总结以上几点:用示意图表示数据结构的逻辑关系时要注意:

    1.将每一个元素看作为一个结点,用圆圈表示。

    2.将各个元素之间的关系用结点之间的连线表示,如果该关系有方向,则用带箭头的连线表示。

    2.物理结构(存储结构):

    物理结构又叫存储结构,分为四种种,顺序存储结构、链式存储结构、索引结构、散列结构。

    2.1 顺序存储结构:

    一段连续的内存空间。

    优点:随机访问

    缺点:插入删除效率低,大小固定

                                                     


    2.2 链式存储结构:

    不连续的内存空间

    优点:大小动态扩展,插入删除效率高

    缺点:不能随机访问。

                                                      

    2.3 索引存储结构:

    为了方便查找,整体无序,但索引块之间有序,需要额外空间,存储索引表。

    优点:对顺序查找的一种改进,查找效率高

    缺点:需额外空间存储索引

    2.4 散列存储结构:

    选取某个函数,数据元素根据函数计算存储位置可能存在多个数据元素存储在同一位置,引起地址冲

    优点:查找基于数据本身即可找到,查找效率高,存取效率高。

    缺点:存取随机,不便于顺序查找。



    原文地址:

    数据结构之逻辑结构与物理结构(存储结构)

    数据的存储结构与逻辑结构



    展开全文
  • 数据的4种逻辑结构与4存储结构

    千次阅读 2015-09-16 20:11:20
    数据4种逻辑结构: 1.集合结构:数据元素之间没有任何关系. 2.线性结构:数据元素之间定义了线性关系.1对1 3.树形结构:数据元素之间定义了层次关系 1对多. 4.图状结构:数据元素之间定义了网状关系 多对多. 常见的4...
  • 数据结构绪论-逻辑结构与物理结构

    千次阅读 2017-02-21 21:42:26
    逻辑结构分为以下 : 1. 集合结构 集合结构:集合结构中的数据元素除了 同属于一个集合外,它们之间没有其他关系。 各个数据元素是"平等'的,它们的共同属性是"同属于一个集合"。数据结构中的集合关系就类似于...
  • 结构化程序设计方法主要由以下种逻辑结构组成: 1)顺序结构:顺序结构是一线性、有序的结构,它依次执行各语句模块。 2)循环结构:循环结构是重复执行一个或个模块,直到满足某一条件为止。 3)选择结构:...
  • 逻辑结构  1, 线性  (1) 数组  (2) 链表  栈和队列是一特殊的线性结构.  2, 非线性  (1) 树  (2) 图  物理结构  内存是线性的一维结构 逻辑结构有  1, 集合结构  2, 线性结构  3, 树
  • 数据4种逻辑结构: 1.集合结构:数据元素之间没有任何关系. 2.线性结构:数据元素之间定义了线性关系.1对1 3.树形结构:数据元素之间定义了层次关系 1对多. 4.图状结构:数据元素之间定义了网状关系 多对多. 常见的4...
  • 数据结构的逻辑结构和物理结构

    千次阅读 2020-07-06 22:00:33
    逻辑结构分为四类型:集合结构,线性结构,树形结构,图形结构。 1.1 所谓集合结构: 表面意思,没有什么深刻意义,就是数据元素同属一个集合,单个数据元素之间没有任何关系。如下图所示。 1.2 线性结构: 类似于...
  • 文件的逻辑结构形式?

    千次阅读 2015-07-23 15:39:00
    无结构的流式文件、有结构的记录式文件 1、 流式文件 无结构的流式文件是相关的有序字符的集合。流式文件由一连串信息组成,...用户也可以灵活地组织起文件内部的逻辑结构。 2、 记录式文件 记录式文件是一...
  • 几种树形结构的总结

    万次阅读 2019-06-28 14:49:59
    数据的逻辑结构与存储结构是密不可分的两个方面,一个算法的设计取决于所选定的逻辑结构,而算法的实现依赖于所采用的的存储结构。逻辑结构(线性结构与非线性结构)存储结构(顺序存储、链式存储、索引存储、散列...
  • 数据的逻辑结构和存储结构

    千次阅读 2019-08-26 22:30:34
    数据的逻辑结构合存储结构 一,逻辑结构 数据的逻辑结构是对数据元素之间逻辑关系的描述,它与数据在计算机中存储方式无关,根据数据元素之间的不同特性,可以对数据的逻辑结构进行分类 分类1:(选型结构和非线性...
  • 逻辑结构,存储结构,物理结构的区分

    千次阅读 多人点赞 2018-01-29 17:48:51
    逻辑结构:是指数据元素之间的逻辑关系,从逻辑关系上描述信息。 存储结构(又称物理结构):数据结构在计算机中的表示(又称映像)。 很好理解,但是光靠这些官话,做题保准做一个错一个 不信?下面放一道题: ...
  • Oracle数据库的体系结构包括四个方面:数据库的物理结构、逻辑结构、内存结构及进程。  1. 物理结构   物理数据库结构是由构成数据库的操作系统文件所决定,Oracle数据库文件包括:  1.1.数据文件(Data File) ...
  • 数据结构(一)逻辑结构和存储结构

    千次阅读 多人点赞 2020-08-08 11:11:53
    逻辑结构:数据的逻辑结构是对数据之间关系的描述,与存储结构无关,同一种逻辑结构可以有多多存储结构。 逻辑结构主要分为两大类:线性存储结构和非线性存储结构 线性存储结构是数据元素有序集合,数据结构之间...
  • 数据结构(逻辑结构和存储结构)

    千次阅读 2018-12-06 14:53:33
    一、逻辑结构:       逻辑结构分为四类型:集合结构,线性结构,树形结构,图形结构。 集合结构:表面意思,没有什么深刻意义,就是数据...
  • 数据库(Database) 数据库是一个数据的集合,不仅是指物理上的数据,也指物理、存储及进程对象的一个组合。...Oracle的逻辑结构是一层次结构。主要由:表空间、段、区和数据块等概念组成。逻辑结构是面
  • 逻辑结构 存储关系 存储结构 如何存储表数据 表空间(tablespace) 常用表空间 表空间和数据文件的关系 段(Segment) 数据区(Extent) 数据块(Data Blocks) 物理结构 ...Oracle的逻辑结构是一...
  •   上一篇文章中写了关于数据的个基本概念,以及它们之间的关系。因此在那的基础上,先写一写关于 数据结构 的定义及辨析。   该知识点的出题模式相对固定,一般出现在选择题前两道。例如:   事实上,...
  • 一、数据的逻辑结构:指反映数据元素之间的逻辑关系的数据结构,其中的逻辑关系是指数据元素之间的前后件关系,而与他们在计算机中的存储位置无关。逻辑结构包括: 集合 数据结构中的元素之间除了“同属一个...
  • 3-数据的逻辑结构

    千次阅读 2018-05-25 00:08:40
      数据结构的分类是分为逻辑结构和物理结构两方面,前面我们已经介绍过了逻辑结构,现在我们再来看一下逻辑结构几种类型,如图1所示: 图1-数据的逻辑结构   我们从上可以发现:上面这三种逻辑结构之间的...
  • 数据库逻辑结构

    万次阅读 2018-04-14 19:06:57
    一、 存储关系oracle数据库 ~ 一个或多个表空间组成 ~ 逻辑上表空间 ~ 一个或多个数据文件 ~ 物理上为每不同的数据对象 ~ 分配不同的段 ~ 保存数据emp表 ~ 所有数据 ~ 存放在emp段中段 ~ 一个或多个区组成...
  • 逻辑结构与存储结构关系

    千次阅读 2021-01-21 16:49:13
    逻辑结构是数据元素之间的关系,存储结构是数据元素一起关系在计算机中的存储方式。 逻辑结构 逻辑结构是数据元素之间抽象化的关系,与数据的存储无关,独立于计算机,它是从具体问题中抽象出来的数学模型。 集合 ...
  • 数据结构是指数据对象以及该数据对象集合中的数据元素之间的相互关系(即数据...其他的结点则各有一个也只有一个直接前驱和直接后继(它的前面和后面均只有一个记录)、这个关系就确定了这个表的***逻辑结构***是.
  • 逻辑结构 数据元素间抽象化的相互关系,与数据的存储无关,独立于计算机,它是从具体问题抽象出来的数学模型。 4逻辑关系 1.集合——数据元素间除“同属于一个集合”外,无其它关系 2.线性结构——一个对一个,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 645,096
精华内容 258,038
关键字:

以下哪几种结构是逻辑结构