从本篇开始,日更一版,每天打卡。
第一章:绪论:
数据结构基本概念,包括逻辑结构+物理结构,这本书一切 都是以逻辑算法,进行计算,具体的物理结构由编译器完成
数据:是对客观事物的符号表示,是计算机程序加工的原料;
数据元素:是数据的基本单位,通常由多个数据项组成的,也就是和类的概念很像,数据项就是等同于属性;
数据结构:也就是说,数据元素之间相互的有一种或者多种关系的数据元素集合;
数据的逻辑结构:
1、集合
(很少讨论)这种数据元素,除了是在一块儿,没有其他的关系
2、线性结构
这种结构中的数据元素之间存在一个对一个的关系
3、树形结构
这种结构中的数据元素之间存在一个对多个的关系
4、图形结构
这种结构就是最后的多对多的关系。
数据的物理结构:
1、顺序存储结构
即数据元素之间是存放在连续的地址空间中,优点是,节省空间,不需要指定额外的空间来存放数据,缺点是不易进行数据的插入和删除,需要进行大量的数据移动
2、链式存储结构
即数据之间通过指针方式连接,优点是,方便插入删除,缺点是需要额外的空间来存储数据1
3、索引存储结构
通过建立关键字索引,从而快速查找到存储数据,关键字,能够唯一地标识一个数据元素,地址表示指向数元素的指针,优点是
进行插入和差删除时,只需要修改存储在索引表中对应的数据元素的存储地址,而不必要移动数据,保持了较高的数据修改运算效率,但是需要维护索引表需要增加时间和空间的开销
4、散列存储结构
这种深有体会,通过散列函数确定位置,如果数据冲突,就用特殊的函数处理进行再次散列,其中关于平均查找长度后面再说。