1. 算法正确性
《算法导论》中文第三版第 10 页
2. 伪代码约定
《算法导论》中文第三版第 11 页
需要注意的是:
- 当伪代码里面写 “从 1 到 A.length” 实际上在代码中对应的是 0 到 len - 1;
- 在 for 循环里,是 <= 的关系,即 0 <= i <= len - 1。
for (int i = 0; i < len; i++)
3. 复杂度分析的符号
《算法导论》中文第三版 第三章
渐近记号(Asymptotic Notation)通常有 O、 Θ 和 Ω 记号法。
Θ 记号渐进地给出了一个函数的上界和下界,
当只有渐近上界时使用 O 记号,
当只有渐近下界时使用 Ω 记号。
尽管技术上 Θ 记号较为准确,但通常仍然使用 O 记号表示。
使用 O 记号法(Big O Notation)表示最坏运行情况的上界。例如,
线性复杂度 O(n) 表示每个元素都要被处理一次。
平方复杂度 O(n^2) 表示每个元素都要被处理 n 次。