美文网首页
时间复杂度 O(logn) 的理解

时间复杂度 O(logn) 的理解

作者: 筱平哥哥 | 来源:发表于2020-10-14 08:45 被阅读0次

文 | 平哥 日期 | 20201014
可以这么理解,比如以下代码:

class Demo {
    public static void main(String[] args){
        i = 1;
        while (i <= n) {
            i = i * 2;
        }
    }
}

此段代码的时间复杂度就取决于while里面那句话的执行次数,也就是i和n的关系。
可以理解为:执行多少次(设为x)就有多少个2相乘,所以最后:
i = 2^x <= n
所以执行次数:x = logn(以2为底)

时间复杂度:O(n) = logn

相关文章

  • 归并排序 by Python

    最好时间复杂度:O(n*logn)最坏时间复杂度:O(n*logn)平均时间复杂度:O(n*logn)空间复杂度:...

  • 快速排序 by Python

    最好时间复杂度:O(n*logn)最坏时间复杂度:O(n²)平均时间复杂度:O(n*logn)空间复杂度:O(1)...

  • 总结八

    时间复杂度 由上图,可见,O(1) 最小,O(logn) 次之,比如二分查找就是 O(logn) 时间复杂度可见 ...

  • review

    时间复杂度所耗费的时间从小到大依次是O(1)< O(logn) < O(n) < O(n*logn) < O(n^...

  • 时间复杂度

    时间复杂度o(1), o(n), o(logn), o(nlogn) 1、时间复杂度o(1), o(n), o(l...

  • 复杂度

    1. 时间复杂度 常见时间复杂度高低 O(1) < O(logn) < O(n) < O(nlogn) < O(l...

  • 算法训练营-第一周-数组链表

    一.时间复杂度&空间复杂度 常见的时间复杂度 常量 O(1) 对数 O(logn) 线性 O(n...

  • 复杂度

    常见复杂度 1.时间复杂度 O(1) < O(logn) < O(n) < O(nlogn) < O(n^2) <...

  • P75-求n次方

    O(logn)时间复杂度求Fibonacci数列

  • 快排的swift实现

    目前看到的最容易理解的快排实现方法(swift版本) 快排的时间复杂度是O(nlogn),空间复杂度是O(logn)

网友评论

      本文标题:时间复杂度 O(logn) 的理解

      本文链接:https://www.haomeiwen.com/subject/ruhvpktx.html