基本概念及术语
数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及他们之间的关系和操作等相关问题的学科。
其重要性可用下边公式阐述:
程序设计 = 数据结构 + 算法
数据定义
数据
是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合。
如:数值类型,声音、图像、视频……
数据元素
是组成数据的、有一定意义的基本单位,在计算机中通常作为整体处理,也被称为记录。
数据项
一个数据元素可以由若干个数据项组成
数据项是数据不可分割的最小单位
但真正讨论问题时,数据元素才是数据结构中建立数据模型的着眼点
数据对象
是性质相同的数据元素的集合,是数据的子集。
- boolean = {false,true}
- digit = {0, 1, 2, 3, 4 5, 6, 7, 8, 9}
数据结构
是一个数据对象
同时这个对象的实例以及构成实例的元素都存在联系
而且这些联系由相关的函数来规定
逻辑结构与物理结构
逻辑结构是面向问题的,物理结构是面向计算机的,其基本的目标就是将数据及逻辑关系存储到计算机的内存中
逻辑结构
-
集合
数据结构中的元素之间除了“同属一个集合” 的相互关系外,别无其他关系
-
线性结构
数据结构中的元素存在一对一的相互关系
-
树形结构
数据结构中的元素存在一对多的相互关系
-
图形结构
数据结构中的元素存在多对多的相互关系
物理结构
-
顺序存储结构
数据结构中的元素之间除了“同属一个集合” 的相互关系外,别无其他关系
-
链式存储结构
数据结构中的元素存在一对一的相互关系