算法——基础知识
1.什么是算法?
答:算法(Algorithm):一个计算过程,解决问题的方法。
程序 = 数据结构 + 算法
2.时间复杂度(三连图)
时间复杂度小结:
1.时间复杂度是用来估计算法运行时间的一个式子(单位)。
2.一般来说,时间复杂度高的算法比复杂度低的算法慢
3.常见的时间复杂度(按效率排序)
- O(1) < O(logn) <O(n) < O(nlogn) <O(n2) <(n2logn) <O(n3)
4.不常见的时间复杂度
O(n!) O(2n) O(nn)
5.如何简单判断时间的复杂度?
1.找到代表问题规模的n
2.是否有循环减半的过程 ——》 O(logn)
3.几层循环就是n的几次方的复杂度
3.递归
1.递归的两个特点:
1.调用自身
2.结束条件