The Three for Loops:
我对这个Big-Oh的东西相当新,我很难看到这三个循环之间的复杂性差异。
它们似乎都小于O(n ^ 2),但大于O(n)。
有人可以向我解释如何评估这些循环的复杂性吗?
谢谢!
答案 0 :(得分:2)
有人可以向我解释如何评估这些循环的复杂性吗?
首先明确定义问题。链接的图像很少继续,所以让我们开始编写东西:
大
第一个循环的成本是多少?
内部陈述的成本是一个单位。
包含它的“j”循环的成本每次都是十个单位。
“i”循环运行了多少次?大约n除以C倍。
因此“i”循环的总成本为10 * n / C,即O(n)。
现在可以进行第二次和第三次循环吗?更清楚地说明你遇到麻烦的地方。从:
开始然后从那里开始。
请记住,您不需要计算完全成本函数。您只需要弄清楚支配成本。提示:我们对外部循环的 last 运行中的C * C * C ...了解了什么?
答案 1 :(得分:0)