1.数据结构的基本概念
数据:
数据元素:
数据项:
数据结构:
数据对象:
2.数据结构的三要素
2.1数据的逻辑结构
1.集合
2.线性结构
3.树型结构
4.图型结构
2.2数据的物理结构(存储结构)
注:如果采用顺序存储,则各个数据元素在物理上必须是连续的;若采用非顺序存储结构,则各个数据元素在物理上是离散的。
数据存储结构会影响存储空间分配的方便程度。
数据的存储结构会影响对数据运算的速度。
2.3数据的运算
运算的实现是针对数据结构的,指出运算的具体操作步骤。
3.数据类型,抽象数据类型
数据类型: 是一个值的集合和定义在此集合上的一组操作的总称。
1)原子结构:其值不可再分的数据类型。
2)结构类型:其值可以再分解为若干成分的数据类型。
抽象数据类型(Abstract Data Type,ADT): 是抽象数据组织及与之相关的操作。
注:ADT用数学化的语言定义数据的逻辑结构,定义运算。与具体的实现无关。
4.算法的概念
4.1什么是算法
程序 = 数据结构 + 算法
五个特性
1.有穷性:
2.确定性:
3.可行性:
4.输入
5.输出
好的算法特质:
1.正确性
2.可读性
3.健壮性
4.高效率和低存储量需求
5.算法的时间复杂度
结论1:顺序执行的代码只会影响常数项,可以忽略。
结论2:只需挑循环中的一个基本操作分析它的执行次数与n的关系即可。
结论3:如果多层嵌套循环,只需关注最深层循环循环了几次。
6.算法的空间复杂度