1.数据结构理论
数据: 描述客观事物的概念
数据结构: 计算机存储,组织数据的方式.是相互之间一种或多种特定关系的数据元素的集合.
算法: 求解特定问题步骤的描述.
程序 = 数据结构 + 算法
算法的特性:
输入,输出,有穷性,确定性和可行性.
确定性; 算法的每一步都有确定的意义
数据结构的分类:
- 逻辑结构:
- 集合结构
- 线性结构: 数据元素之间是一对一的关系[1:1]
- 树形结构: 数据元素之间是一对多的关系[1;n]
- 图形结构: 数据元素之间是多对多的关系[n;n]
- 物理结构
数据的逻辑结构在计算机中存储方式
-
顺序存储
地址连续(逻辑关系和物理关系一致)
- 优点:
数据访问很快
不需要额外的空间维护指针域
- 缺点:
空间的额外浪费
插入和删除数据,需要移动大量数据,效率很低
-
链式存储
地址不一定连续 (物理关系不能反映其逻辑关系)
需要一个指针存放数据元素的地址
- 优点:
插入和删除数据效率比较高
没有额外的空间浪费 - 缺点:
对数据的随机访问效率低
需要一些额外的空间维护指针域
- 优点: