数据结构的定义
数据结构是相互之间存在一种或者多种特定关系的数据元素的集合。
数据结构的三要素
逻辑结构、存储结构、数据运算
逻辑结构
分为线性结构:线性表
非线性结构:集合,树和图
存储结构
顺序存储:可以随机存储,但是会产生较多的外部碎片
链式存储:能充分利用存储单元,不会出现外部碎片,但是占用额外的存储空间,只能进行顺序存取。
索引存储:检索速度快,缺点是占用存储空间,增加和删除数据时要修改索引表,耗费时间。
散列存储:检索,增加和删除节点的操作很快,缺点是如果散列函数不好,可能出现存储单元的冲突,解决冲突会增加时间和空间的开销。
数据运算
运算的定义和实现,运算的定义是针对逻辑结构的。运算的实现是针对存储结构的。
算法的5个重要特征
有穷性
正确性:相同的输入只能得到相同的输出
可行性
输入:0个或者多个
输出:一个或者多个