Algorithm O(),θ;()和Ω;()代码的时间复杂性
请帮助我找到以下代码的Algorithm O(),θ;()和Ω;()代码的时间复杂性,algorithm,complexity-theory,Algorithm,Complexity Theory,请帮助我找到以下代码的O()、θ()和Ω()时间复杂度 if(x<A) Func1(n); else if(x<A+1000) Func2(n); else if(x<A+5000) Func3(n); else Func4(n); 设f为显示代码定义的函数,并设f₁...F₄表示Func1…4。如果没有给出关于x和A的值的信息,那么关于f的最大结论是f(n)的下限低于适用于f中任何一个的下限₁...F₄,并以适用于任何f的最大上界为界₁...F₄。它们的最小下界是Ω(n),
O()
、θ()
和Ω()
时间复杂度
if(x<A) Func1(n);
else if(x<A+1000) Func2(n);
else if(x<A+5000) Func3(n);
else Func4(n);
设
f
为显示代码定义的函数,并设f₁...F₄代码>表示Func1…4
。如果没有给出关于x
和A
的值的信息,那么关于f
的最大结论是f(n)
的下限低于适用于f中任何一个的下限₁...F₄代码>,并以适用于任何f的最大上界为界₁...F₄代码>。它们的最小下界是Ω(n),最大上界是O(2)ⁿ), 所以f(n)
的复杂度是Ω(n)和O(2)ⁿ).
f的复杂性₄(n) 问题中的
没有很好的定义(如最初所述),因为下面以倍数n log n
为界的函数不能上面以倍数n
为界₄代码>边界O(n)和Ω(nlogn)超出Ω(n)和O(2)的范围ⁿ).
编辑:修改后的问题,f₃
是θ(logn),而f₄
是Ω(logn)和O(n)。在f上的最小下界₁...F₄代码>现在是Ω(logn),而f(n)
的复杂度是Ω(logn)和O(2)ⁿ). 没有关于x
和A
的信息,就没有函数g(n)
使得常数C₁代码>和C₂代码>存在给C₁·g(n)
渐近,因此对于f()
让f
是由显示的代码定义的函数,并让f₁...F₄
表示Func1…4
。如果没有给出关于x
和A
的值的信息,那么关于f
的最大结论是f(n)
的下限低于适用于f中任何一个的下限₁...F₄代码>,并以适用于任何f的最大上界为界₁...F₄其中最小的下界是Ω(n),最大的上界是O(2)ⁿ), 所以f(n)
的复杂度是Ω(n)和O(2)ⁿ).
f的复杂性₄(n) 问题中的
没有很好的定义(如最初所述),因为下面以倍数n log n
为界的函数不能上面以倍数n
为界₄代码>边界O(n)和Ω(nlogn)超出Ω(n)和O(2)的范围ⁿ).
编辑:修改后的问题,f₃
是θ(logn),而f₄
是Ω(logn)和O(n)。在f上的最小下界₁...F₄代码>现在是Ω(logn),而f(n)
的复杂度是Ω(logn)和O(2)ⁿ). 没有关于x
和A
的信息,就没有函数g(n)
使得常数C₁代码>和C₂代码>存在给C₁·g(n)
渐近,所以对于f()
来说,没有θ()界,如果某物在θ(foo)
,它也在O(foo)
和Ω(foo)
(事实上某物在θ(foo)
如果它在O(foo)
和Ω(foo)
),所以你只需要找出θ。关于x
有什么给出的吗?x
和n
之间有什么关系吗?没有,x和n之间没有关系。x只是任意变量。如果某个东西在θ(foo)
中,它也在O(foo)
和Ω(foo)
(事实上,θ中有东西(foo)
如果它在O(foo)
和Ω(foo)
,那么你只需要找出θ。关于x
有什么给出吗?x
和n
之间有什么关系吗?没有,x和n之间没有关系。x只是任意变量。Func4(n)=Ω(logn)。但是θ()?是否应为最大上限,即O(2ⁿ)?Func4(n)=Ω(logn)。那么θ()呢?它应该是最大的上界吗,即O(2)ⁿ)?
Func1(n)=θ(n)
Func2(n)=θ(2^n)
Func3(n)=θ(logn)
Func4(n)=O(n)
Func4(n)=Ω(logn)