在算法分析中,经常用到算法复杂度分析的情况,现将自己整理的算法复杂度的内容分享给大家。
算法复杂度 | 典型代码形式 | 说明 | 举例 |
常数级别:O(1) | a = b+c | 普通语句 | 将两个数相加 |
对数级别:O(logN) | https://blog.csdn.net/taohuaxinmu123/article/details/20555575 | 二分策略 | 二分查找 |
线性级别:O(N) | int i; for(i=0;i<n;i++); | 循环 | 找出最大元素 |
线性对数级别 O(NlogN) | int i,j for(i=0;i<n;i++) for(j=0;j<n;j+=i) | 分治 | 归并排序 |
平方级别O(N*2) | int i,j for(i=0;i<n;i++) for(j=0;j<n;j++) | 双层循环 | 检查所有元素对 |
指数级别O(2*N) | https://blog.csdn.net/xukun5137/article/details/46349799 | 穷举查找 | 检查 |