为什么在最坏情况下插入排序的运行时间复杂度是 n(n-1)/2 ~ n^2?突出除以2?
问问题
6573 次
3 回答
0
算法介绍在2.1章详细介绍了插入排序,讨论了插入排序的全过程。
最坏的情况是子阵倒序切换引起的。
于 2012-06-23T13:21:19.293 回答
0
我知道这已经永远关闭了,但我想为其他试图复习插入排序最坏情况背后的数学的人添加这个。我找到了一个很棒的视频,它以这种方式解释了 n(n-1) / 2 公式:
评估总和:
您首先将其放入系列符号(称为 s):
s = 1 + 2 + 3 + ... n-3+n-2+n-1
然后反向显示:
s = n-1+n-2+n-3+ ... 3 + 2 + 1
通过将每一对相加将 s 与 s 相加,您将得到:n+n+n+....n+n+n
或者换句话说2s = n(n-1)
,因为你有 n,n-1 次,并且你花了其中两个来获得它。
那么你只需要解决 的2s = n(n-1)
不等式s = n(n-1) / 2
。
于 2014-09-20T21:46:54.803 回答