学习笔记(04):图解数据结构与算法-复杂度分析(二):常见复杂度分析

立即学习:https://edu.csdn.net/course/play/29510/420448?utm_source=blogtoedu

时间复杂度分析方法:

  1. 单段代码看高频:只关注循环执行次数最多的一段代码
  2. 多端代码取最大:总复杂度等于量级最大的那段代码的复杂度
  3. 嵌套代码求乘积:嵌套代码的复杂度等于嵌套内外代码复杂度的乘积

常见的复杂量级:

学习笔记(04):图解数据结构与算法-复杂度分析(二):常见复杂度分析

 

非多项式量级的算法问题叫做NP问题,即为非确定多项式;当n趋于∞,时间无限增长,所以非多项式时间复杂度当算法其实是非常低效的算法。

 

O(1):没有循环,递归

O(logn) / O(nlogn):对数阶

O(m + n) / O(m * n)