读书人

时间复杂度O(loglt;2gt;N)不懂,

发布时间: 2012-03-18 13:55:38 作者: rapoo

时间复杂度O(log<2>N)不懂,请指教.
分析以下时间复杂度
i=1;
while(i<=n)
i=i*2;
其中设i=i*2;这句的频度为f(n)则有:
2的f(n)次方<=n
可得f(n)<=log<2>N.我对"2的f(n)次方<=n"怎么也无法理解.请问2的f(n)次方是怎么得来的????如果换成i=i*3呢?
本人愚笨.请指点.


[解决办法]
从1开始乘,每次乘二,乘到N需要几次呢?因为2^(log<2>N)=N,所以循环体内语句执行了log<2>N次。
[解决办法]
有个笔误

f(n)=int(log(n)/log(2)) <=log(n)/log(2)
== >

f(n)<=log(n)/log(2)

读书人网 >软件架构设计

热点推荐