Algorithm n选择2的复杂度是θ(n^2)?

Algorithm n选择2的复杂度是θ(n^2)?,algorithm,math,complexity-theory,big-o,big-theta,Algorithm,Math,Complexity Theory,Big O,Big Theta,我正在阅读,在第69页的“暴力解决方案”中,他们说n选择2=θ(n^2)。我想它应该在θ(n!)中。为什么n选择2与n平方紧密绑定?谢谢 n选择2是 n(n-1)/2 这是 n2/2-n/2 我们可以看到,n(n-1)/2=Θ(n2),当n趋于无穷大时,取其比值的极限: 利姆→ ∞ (n2/2-n/2)/n2=1/2 因为这是一个有限的,非零的量,我们有n(n-1)/2=Θ(n2) 更一般地说:n为任何固定常数k选择k,因为它等于 n!/(k!(n-k)!=n(n-1)(n-2)…(n-k+1)

我正在阅读,在第69页的“暴力解决方案”中,他们说n选择2=θ(n^2)。我想它应该在θ(n!)中。为什么n选择2与n平方紧密绑定?谢谢

n选择2是

n(n-1)/2

这是

n2/2-n/2

我们可以看到,n(n-1)/2=Θ(n2),当n趋于无穷大时,取其比值的极限:

利姆→ ∞ (n2/2-n/2)/n2=1/2

因为这是一个有限的,非零的量,我们有n(n-1)/2=Θ(n2)

更一般地说:n为任何固定常数k选择k,因为它等于

n!/(k!(n-k)!=n(n-1)(n-2)…(n-k+1)/k

这是n中的第k次多项式,前导系数非零


希望这有帮助

n选择2=n(n+1)/2=(n^2+n)/2…@DennisMeng-这是n(n-1)/2而不是n(n+1)/2。当然!出于某种原因,我认为n选择k是(n!)/(k!)。你可以使用精彩的Wolfram Alpha网站得到一个线索:当然!“出于某种原因,我认为n选择k是(n!)/(k!)。@JennyShoars-那肯定会让人困惑。希望这件事能澄清!这是不是
n^2/2-n^2/2
?谢谢。您的上一个声明只适用于
k=n/2
,此时choose函数分母中的
k
n-k
在取消中占主导地位,复杂性再次开始降低,最终降低到
n choose n==1
。正确的概括是它是一个
theta(min(k,n-k))
阶多项式。@pjs很棒的一点。我认为这取决于我们认为什么是可变的,什么是固定的。如果k是一个固定常数,n是一个变量,那么对于足够大的n值,我们将根据需要得到n>k/2。(我们可以通过找到适当的c和n_0值来将其形式化,从而使其起作用。)