算法性能分析
比较算法的性能的时候,我们使用输入数据的规模N来评价算法的性能。计算算法执行花费的时间。性能评价的另一种方法考虑耗费多少内存或者存储空间。
算法分类:(按照效率降序排列)
1、常数级
原生操作都是常数级。
2、对数级
典型的问题,如猜数字,二分法。
3、次线性级
多维kd树,它能够有效的划分n个多维点。
4、线性级
一层循环,一般是这个算法复杂度。
5、nlogn级
分治递归算法的时间复杂度,递归的时间复杂度加上,合并解的过程。
6、平方级
两层循环一般是这个复杂度。
7、指数级
欧几里得GCD算法。
8、NP问题。
不能用多项式时间解决的问题。