Big o 大循环操作
如果我有两个嵌套循环,其中外部有一个大的oh符号Big o 大循环操作,big-o,nested-loops,Big O,Nested Loops,如果我有两个嵌套循环,其中外部有一个大的oh符号logn 内部有一个n,这是否意味着整体概念是log2n? 因为每次执行外循环时n都会发生变化,所以从技术上讲,内循环会运行logn次,但它会循环n次。如果这个问题听起来很愚蠢,我道歉。这是循环的外观: outer loop runs while n>0 inner loops runs n times n=(1/4)n 很抱歉,如果我的格式设置被关闭,我花了几分钟试图找出如何在这里使用latex,但无法完全破解它时间复杂性是O
logn
内部有一个n
,这是否意味着整体概念是log2n
?
因为每次执行外循环时n都会发生变化,所以从技术上讲,内循环会运行logn
次,但它会循环n次。如果这个问题听起来很愚蠢,我道歉。这是循环的外观:
outer loop runs while n>0
inner loops runs n times
n=(1/4)n
很抱歉,如果我的格式设置被关闭,我花了几分钟试图找出如何在这里使用latex,但无法完全破解它时间复杂性是O(n)
:
总结起来:
n + n/4 + n/16 + ... + n/4^k + ... + n/(4^log_4(n))
这与:
它的和的范围是:
(n/3/4)=4n/3
,根据r<1
的公式,谢谢。因此,可以肯定的是,总体时间复杂度是nlogn
?这意味着外部循环运行logn
times@DrewU否,正如答案中明确解释的,如果O(n)
,则时间复杂度为。请确保您理解原因。是的,我知道内部循环的时间复杂度为O(n)。我在问,如果外循环的时间复杂度确实是O(logn),那么外循环和内循环的整体复杂度是O(nlogn)吗?内环时间复杂度*外环时间复杂度
n + n/4 + n/16 + ... + n/4^k + ... + n/(4^log_4(n))
a = n
r = 1/4