一,数据结构三要素:
逻辑结构:1.线性结构:线性表,栈,队列
2.非线性结构:树,图,集合
存储结构:(物理结构)
数据运算
二,算法的概念:对问题求解步骤的一直描述
算法五个特性:有穷性,确定性,可行性,输入(0个或多个),输出(1个或多个输出)
算法达到目标:正确性,可读性,健壮性,高效性
三,效率的度量:
时间复杂度,空间复杂度
四,名词解释:
数据:是信息的载体,描述客观事物的属性的数,字符以及所有输入到计算机中并被计算机 程序识别和处理符号的集合。
数据元素:数据的基本单位,数据项是构成元素的不可分割的最小单位
数据对象:是具有相同性质数据元素的集合,是数据的一个子集
数据类型:原子类型,结构类型,抽象数据类型
数据结构:相互之间存在一种或多种特定关系的数据元素的集合
五 ,逻辑结构:数据对象之间的关系,各元素之间的关系
集合结构:相互独立关系
线性结构:一对一关系
树形结构:一对多关系
图状/网状结构:多对多关系
六,物理结构:计算机中的存储的关系。
顺序存储:按照顺序直线排序,地址是连续的
链式存储:由存放地址的指向来存储,没有顺序,地址不连续。
索引存储:建立元素信息的同时,还附加了索引表。
散列存储:根据元素的关键字直接计算出元素的存储地址。
七:时间复杂度排序
O(1)< O(log2(n))< O(n)< O(nlog2(n)< O(n^2)< O(n^3)< O(2^n)< O(n!)< O(n^n)
例如:
int i=1;n=100;
while(i<n){
i=i*2;
}
程序运行,先设X个2相乘后大于n,则2^X=n,解得X=log2(n),所以时间复杂度时O(log2(n)),log以2为底,n为真数。