嵌套依赖循环的时间复杂性



我最近刚开始研究算法,很难找到以下算法的时间复杂性(Big Oh表示法(:

for(int i=0;i<=n;i++){
for(int j=i;j<=n;j=j/2){
for(int k=0;k<=n;k=k*2){
//set of statements
}}}

有人能帮我确定以下算法的复杂性吗。我发现内部循环(k-loop(是独立的,它的复杂性是(logn(。当找到I,j循环时,我有点困惑,当j=j/2时,它会变成什么序列?

任何正整数的最坏情况-这将作为最内部的循环无限运行,即K-循环,永远不会终止,因为它是用0初始化的,并一直更新为0(K=K*2(。

最新更新