算法的五大特征:

有穷性、无二义性、可行性、输入、输出

 

时间复杂度:

T(n)=O(f(n))f(n)是算法中基本运算的频度。

计算方法:取最高次项

O(1)<O(logn)<O(n)<O(nlogn)<O(n2)<O(n3)<O(2n)

 

空间复杂度:

S(n)=O(g(n))

 

算法复杂度的计算:

单个循环体:循环体执行次数K

for(int i=1; i<=n; i*=2),时间复杂度:O(logn)

  多个循环体:嵌套相乘,独立相加。

 

空间复杂度:算法在执行时需要的辅助空间大小

  原地工作:即辅助空间为常数