第一章 算法概述
算法的性质
算法的四个性质:输入、输出、确定性和有穷性。
算法的时间复杂度
1. 常见的时间复杂度
常数阶 O(1)
对数阶 O(log n)
线性阶 O(n)
线性对数阶 O(nlog n)
平方阶 O(n^2)
立方阶 O(n^3)
k 次方阶 O(n^k)
指数阶 O(2^n)
注:上面的 log n 均代表以2为底的对数。
2. 时间复杂度排序
常见的算法时间复杂度由小到大依次为:
Ο(1)<Ο(log n)<Ο(n)<Ο(nlog n)<Ο(n^2)<Ο(n^3)< Ο(n^k) < Ο(2^n)
随着问题规模n的不断增大,上面时间复杂度的值也不断增大,算法的执行效率越来越低。