逻辑/物理结构类型
特定数据元素集合
- 集合结构:相互之间无关系
- 线性结构:数据元素一对一,包括线性表,栈和队列,字符串(特殊线性表)
- 树形结构:数据一对多层次结构
- 图形结构:数据多对多
物理结构:计算机中存储形式
- 顺序存储结构:存储单元连续
- 链式存储结构:存储单元可连续,也可非连续,用于处理变化结构(查找,插入,删除)
算法
时间复杂度
使用大O表示法 体现算法时间复杂度
从上述表中可见,随着n增大,执行次数中较低次项与最高次项相比,可忽略不计。因此,时间复杂度只保留最高次项,并将系数记为1(即忽略加法常数)
例:
上述循环执行次数为
∑
n
=
n
2
2
+
n
2
\sum n = \frac{n^2}{2}+\frac{n}{2}
∑n=2n2+2n
忽略系数及低次项,得时间复杂度为
O
(
n
2
)
O(n^2)
O(n2)
其他常见时间复杂度:
注:
一般情况下,时间复杂度考虑最坏情况,即执行次数最多情况
空间复杂度
计算算法所需存储空间
S
(
n
)
=
O
(
f
(
n
)
)
S(n) = O(f(n))
S(n)=O(f(n)) ,其中 f(n)为问题规模n的函数