基本概念和术语
4类基本数据结构
(1)集合
(2)线性结构
(3)树形结构 (树)
(4)图状结构或网状结构 (图)
存储结构
顺序存储结构和链式存储结构
算法和算法分析
算法:是对特定问题求解步骤的一种描述,它是指令的有限序列,其中一条指令表示一个或多个操作。
算法的五个重要特性
(1)有穷性
(2)确定性
(3)可行性
(4)输入
(5)输出
算法设计的要求
(1)正确性
(2)可读性
(3)健壮性
(4)效率与低储存需求
算法效率的度量
时间复杂度和空间复杂度
时间复杂度
T(n) = O( f(n) )
运算规则
加法规则:T1(n)+T2(n)=O(max{ f(n) , g(n) })
乘法规则:T1(n) * T2(n)=O( f(n) * g(n) })
常用的时间复杂度排序:
O(1)常数阶 < O(logn)对数阶 < O(n)线性阶 < O(n * n)平方阶 < O(n*n*n)立方阶< O(2`n)指数阶
只要是常数均表示为O(1)
如:O(8) 写作为 O(1)
空间复杂度
S(n) = O( f(n) )
算法的时间复杂度和空间复杂度是可以相互转化的