【JS数据结构与算法】大O表示法

mac2022-06-30  29

含义

算法的时间复杂度通常用大O符号表述,定义为T[n] = O(f(n))。

大O表示法,用于描述计算机算法的效率,在计算机中,这是一种粗略的度量。

这个其实就是当数据项个数发生变化时,算法的效率会跟着发生变化。

推导出大O表示法的方式

① 用常量1取代运行时间中所有的加法常量。

② 在修改后的运行次数函数中,只保留最高阶项。

③ 如果最高存在且不为1,则去除这个项乘积的系数。

常见的大O表示形式

符号名称O(1)常数O(log(n))对数O(n)线性O(nlog(n))线性和对数乘积O(n^2)平方O(2^n)指数O(n!)阶乘

对应的图形增长趋势

常用的时间复杂度所消耗的时间从小到大依次是:

O(1) < O(logn) < O(n) < O(nlogn) < O(n^2) < O(n!)

最新回复(0)