大哦记谱法

时间:2011-11-24 19:53:22

标签: algorithm big-o

只需要快速确认一些事情。 如果一个算法需要运行n(n-1)/2个测试,那么这个问题是不是很大O(n^2)

4 个答案:

答案 0 :(得分:16)

n(n-1)/ 2扩展为(n^2 -n) / 2,即(n^2/2) - (n/2)

(n^2/2)(n/2)是两个函数组件,其中n^2/2占主导地位。 因此,我们可以忽略- (n/2)部分。

n^2/2开始,您可以安全地删除渐近符号分析中的/ 2部分。

这简化为 n^2

因此,是,它在O(n ^ 2)

答案 1 :(得分:5)

是的,这是正确的。

n(n-1)/2扩展为n^2/2 - n/2

线性项n/2会下降,因为它的次序较低。这留下了n^2/2。常量被吸收到big-O中,留下n^2

答案 2 :(得分:3)

是:

n(n-1)/2 = (n2-n)/2 = O(n^2)

答案 3 :(得分:2)

是的,确实如此。 n(n-1)/2(n^2 - n)/2,如果您选择的c*n^2至少为n>=1,则明显小于c {{1}}。