关闭

数据结构三要素

标签: 数据结构
1004人阅读 评论(0) 收藏 举报
分类:

1.数据逻辑结构

逻辑结构是指数据元素之间的逻辑关系,即从逻辑关系上描述数据。它与数据的存储无关,是独立于计算机的。数据的逻辑结构分为线性结构和非线性结构,线性表是典型的线性结构;集合、树和图是典型的非线性结构。数据的逻辑结构分类见下图。

- 集合结构中的数据元素之间除了 “同属于一个集合”的关系外,别无其他关系。
- 图状结构或网状结构结构中的数据元素之间存在多对多的关系。
- 线性结构结构中的数据元素之间只存在一对一的关系。
- 树形结构结构中的数据元素之间存在一对多的关系。

![ 数据的逻辑结构分类图](http://c.biancheng.net/cpp/uploads/allimg/140707/1-140FGA042I2.jpg)

2.数据存储结构

存储结构是指数据结构在计算机中的表示(又称映像),也称物理结构。它包括数据元素的表示和关系的表示。数据的存储结构是逻辑结构用计算机语言的实现,它依赖于计算机语言。数据的存储结构主要有:顺序存储、链式存储、索引存储和散列存储。

1) 顺序存储:把逻辑上相邻的元素存储在物理位置上也相邻的存储单元里,元素之间的关系由存储单元的邻接关系来体现。其优点是可以实现随机存取,每个元素占用最少的存储空间;缺点是只能使用相邻的一整块存储单元,因此可能产生较多的外部碎片。

2) 链接存储:不要求逻辑上相邻的元素在物理位置上也相邻,借助指示元素存储地址的指针表示元素之间的逻辑关系。其优点是不会出现碎片现象,充分利用所有存储单元;缺点是每个元素因存储指针而占用额外的存储空间,并且只能实现顺序存取。

3) 索引存储:在存储元素信息的同时,还建立附加的索引表。索引表中的每一项称为索引项,索引项的一般形式是:(关键字,地址)。其优点是检索速度快;缺点是增加了附加的索引表,会占用较多的存储空间。另外,在增加和删除数据时要修改索引表,因而会花费较多的时间。

4) 散列存储:根据元素的关键字直接计算出该元素的存储地址,又称为Hash存储。其优点是检索、增加和删除结点的操作都很快;缺点是如果散列函数不好可能出现元素存储单元的冲突,而解决冲突会增加时间和空间开销。 

3.数据的运算

施加在数据上的运算包括运算的定义和实现。运算的定义是针对逻辑结构的,指出运算的功能;运算的实现是针对存储结构的,指出运算的具体操作步骤。

参考:数据结构

0
0
查看评论

(1)数据结构是什么?

数据结构是什么? 当用计算机解决一个实际问题时,需要经过如下步骤: 1)从具体问题抽象出数学模型, 2)选择或设计数学模型的算法, 3)编写程序得到最终结果。 而数据结构是一门研究非数值计算程序设计问题中计算机的操作对象以及他们之间的关系和操作的学科, 用以描述现实世界实体的数学模型(非...
  • zl908760230
  • zl908760230
  • 2016-10-21 20:01
  • 436

数据结构三要素

本文摘自:王道考研系列 数据结构联考复习指导(2012版) 数据结构的三要素: 1.数据的逻辑结构   2.数据的物理结构    3.数据的运算 一、数据的逻辑结构 1. 线性表 1.1 一般线性表 1.2 受限线性表 1.2.1 栈   1....
  • superjoson21
  • superjoson21
  • 2012-11-04 23:15
  • 2860

数据库-数据模型(分类、三要素、概念)

(1)数据模型的分类: 最常用的数据模型是概念数据模型和结构数据模型:    ①概念数据模型(信息模型):面向用户的,按照用户的观点进行建模,典型代表:E-R图    ②结构数据模型:面向计算机系统的,用于DBMS的实现,典型代表有:层次模型,网状模型、...
  • zdplife
  • zdplife
  • 2015-08-28 15:43
  • 9675

数据结构的三个方面

数据结构的三个方面
  • woaijianjiandandande
  • woaijianjiandandande
  • 2016-10-17 22:57
  • 294

数据结构三要素

1.数据逻辑结构逻辑结构是指数据元素之间的逻辑关系,即从逻辑关系上描述数据。它与数据的存储无关,是独立于计算机的。数据的逻辑结构分为线性结构和非线性结构,线性表是典型的线性结构;集合、树和图是典型的非线性结构。数据的逻辑结构分类见下图。- 集合结构中的数据元素之间除了 “同属于一个集合”的关系外,别...
  • katy_yuan
  • katy_yuan
  • 2016-08-29 16:49
  • 1004

数据结构(笔记)

数据结构 数据结构三要素 分别是:逻辑结构、存储结构、数据的运算   1、线性表 (1)定义:就是一个表,一个记录就是线性表的一个数据元素,表的长度就是数据元素的个数。 (2)、 线性链表:   如上图,线性链表由一个个结点组成,每个节点有数据域和指针域两部分组成,数...
  • Xiongchao99
  • Xiongchao99
  • 2017-07-10 11:22
  • 880

黑马程序员 网络编程之网络通信三要素

---------------------- ASP.Net+Android+IOS开发、.Net培训、期待与您交流! ---------------------- 网络通讯三要素 1.  IP地址,找到对方通过IP 2.  端口号,数据要发送到对方指定程序上,为了标识这些...
  • u010102086
  • u010102086
  • 2014-01-14 16:15
  • 1375

统计学习三要素

统计学习三要素   李航博士在《统计学习方法》一书中这样描述统计学习方法的构成:          方法=模型+策略+算法 本人更形象地借助产品经理的视角可以类比这样的:         &...
  • mmmmmttttff
  • mmmmmttttff
  • 2016-04-09 17:04
  • 1279

数据结构总结(一)

数据结构的基本概念和术语1.数据数据是信息的载体,是描述客观事物属性的数,字符以及所有能输入到计算机中并被计算机程序识别和处理的符号的集合。2.数据元素数据元素是数据的基本单位,通常作为一个整体进行考虑和处理。一个数据元素可由若干个数据项组成,数据项是构成数据元素的不可分割的最小单位。例如,学生记录...
  • yongchaocsdn
  • yongchaocsdn
  • 2017-01-01 21:56
  • 526

笔记:数据结构研究内容

1、用计算机解决实际问题时,步骤:首先分析实际问题,从中抽象出一个适当的数学模型,然后设计一个解决此数学模型的算法,最后编程,调试,测试。       寻求数据模型的实质是分析问题,从中提取出计算机处理的对象,并找出这些对象之间的关系,然后用数学的语言加以描述。 &...
  • qq_36767335
  • qq_36767335
  • 2017-09-18 20:17
  • 199
    个人资料
    • 访问:7919次
    • 积分:186
    • 等级:
    • 排名:千里之外
    • 原创:10篇
    • 转载:1篇
    • 译文:0篇
    • 评论:0条