提示:以下是本篇文章正文内容,下面案例可供参考
一、什么是数据结构?
1.数据结构研究计算机数据间关系
2.数据结构的逻辑结构、存储结构、及操作
数据
数据:所有能被输入到计算机并被处理的符号的集合
数据元素:数据的基本单位
数据项:构成数据的不可分割的最小单位,一个数据元素有若干个数据项组成
数据对象:相同性质的数据元素的集合,是数据的一个子集
数据类型:一个值的集合和定义在这个集合上的一组操作的总成
结构
逻辑结构:数据对象中数据元素之间的相互关系
集合结构:集合中的元素除了同属于一个集合之外,没有其他关系
线性结构:线性结构中的数据元素之间是一对一的关系
二、数据逻辑结构
集合结构:数据元素除同属于一个集合外,他们之间没有任何关系(同级别)
线性结构:数据元素之间是一对一的关系
树形结构:数据元素之间存在一对多的层级关系
图形结构:数据元素是多对多的关系
数据逻辑结构表示数据运算之间的抽象关系,按每个元素可能具有的直接前驱数和直接后继数将逻辑结构分为“线性结构”和非线性结构两大类
1.线性结构
线性结构:结构中的数据元素之间只存在一对一的关系
线性结构有:线性表、栈、队列
2.非线性结构
树形结构:结构中的数据元素之间存在一对多的关系或者多对多关系
非线性结构:树形结构、图形结构
三、存储结构
顺序存储
顺序存储:把逻辑上相邻的元素存储在物理位置上相邻的存储单元里,通过存储单元的邻接关系来表示元素之间的逻辑关系
优点:实现随机存储,每个元素占用空间小
缺点:只能使用相邻的一整块存储单元,会产生较多的外部碎片
链式存储
链式存储:不要求逻辑上相邻的元素在物理位置上也相邻,通过指针表示元素之间的逻辑关系
优点:不会出现碎片现象,充分利用所有的存储单元
缺点:每个元素要占用存储指针,需要多占用部分存储空间,而且只能顺序存取
索引存储
索引存储:存储信息的同时,建立附加的索引表,索引表中的每一项成为索引项,索引项的一般形式(关键字,地址)
优点:检索速度快
缺点:增加索引表,占用较多存储空间,增删数据时也要修改索引表,花费较多的时间
散列存储
散列存储:根据元素的关键字直接计算出该元素的存储位置,也称Hash存储
优点:检索,增删节点操作都很快
缺点:散列函数不好可能会出现元素存储单元的冲突,解决冲突会增加时间 ,空间的开销
四、 数据的运算
检索、
排序、
插入、
删除、
修改