下面的这段代码,时间复杂度又是多少呢?

    1. int count = 1;
    2. while (count < n){
    3. count = count * 2;
    4. /* 时间复杂度为O(1)的程序步骤序列 */
    5. }

    由于每次count乘以2之后,就距离n更近了一分。也就是说,有多少个2 相乘后大于n,则会退出循环。由2x =n得到x=log2n。所以这个循环的时间复杂度为O(logn)。