数据结构基本概念
数据结构有两大基本用途:
1,存储要存放的数据,如迷宫地图
2,配合算法策略实现,如迷宫例子中探索方向增量数组、回溯的栈、避免重复走的标记数组(走过的地方标记成-1)
数据结构的作用
1,杂乱的数据不能表达和交流信息。
2,数据之间是有联系的,这种联系往往影响了算法的选择和效率。数据结构与算法就是研究数据之间的联系及选择与设计高效率的算法。
3,数据之间是有结构的(线性,树,图)
4,在某种数据结构上的各种运算。(算法)
数据结构相关术语
数据:所有能够被计算机识别的符号集合
数据元素:数据(集合)中的一个“个体”,
是数据结构中讨论的基本单位
例如数据结构与算法这本书就是就是一个数据元素
数据项:是数据结构中讨论的最小单位,数据元素可以是数据项的集合。
例如:描述一个数据结构与算法这本书数据元素可以由作者、出版社、发行日期组成。
数据对象:是具有相同性质的数据元素的集合是数据的一个子集
四者关系如下
5.数据结构:
带结构的数据元素的集合
用集合的形式描述,数据结构是一个二元组:
DS=(D,R)
其中:D是数据元素的集合,R是D上关系的集合。
简言之,数据元素和其相互关系称为数据结构。
数据结构由一个四元组来表示:
Data_Structure =(D,L,S,O),
D:数据元素的有限集、
L:数据元素之间的逻辑关系、
S:逻辑关系在计算机中的存储表示、
O:以及在数据元素上所规定的操作这四部分。
逻辑结构:
数据抽象的逻辑关系
解决问题时观察对象是属于哪种数据结构,(找出模型)使用相关操作解决实际问题
存储结构(物理结构),数据结构在计算机中的存储表示
1)顺序存储结构:把逻辑上相邻的元素存储在物理位置相邻的存储单元中
2)链式存储结构:在数据元素中添加一些地址域或辅助结构,用于存放数据元素之间的关系。
数据类型:
是程序设计语言中用来刻划操作对象的特性的一个值的集合和定义在此集合上的一组操作的总称。
例如:
数据类型:是程序设计语言中用来刻画操作对象的特性的一个值得集合和定义在此集合和定义在此集合上的一次操作的总称。
例如:C语言中,char占一个字节,处理方法是char的处理方式,float的处理方式是浮点型操作。
数据结构和数据类型的关系:
抽象数据类型,(D,R,O)
D是数据元素集合,
R是D上的关系集合,
O是对D的基本操作集
和数据结构相比少了存储结构。