-
如何计算时间复杂度:
- 找到一个基本操作(最深层循环)
- 分析该基本操作的执行次数 x 与问题规模 n 的关系 (x=f(n))
- f(x)的数量级 O(f(n)) 就是算法时间复杂度 T(n)
-
常用技巧:
- 加法法则:O(f(n)) + O(g(n)) = O(max(f(n), g(n)))
- 乘法规则:O(f(n))×O(g(n)) = O(f(n)×g(n))
-
常见的时间复杂度排序:
- O(1) < O(logn) < O(n) < O(nlogn) < O(n^2) < O(n^3) < O(2^n) < O(n!) < O(n^n)
-
三种复杂度:
- 平均时间复杂度:考虑所有输入数据都等概率出现的情况
- 最好时间复杂度:考虑输入数据“最好”的情况
- 最坏时间复杂度:考虑输入数据“最坏”的情况
数据结构笔记之时间复杂度
最新推荐文章于 2024-07-24 19:35:30 发布