在 n 个不同整数的排列 a1…..an 中,反转是一对 (ai, aj) 使得 i aj。如果输入仅限于 1…..n 的排列,最多有 n 次反转,那么插入排序算法的最坏情况时间复杂度是多少?
(A) Θ (n 2 )
(B) Θ (n log n)
(C) Θ (n 1.5 )
(D) Θ (n)答案: (D)
说明:插入排序在 Θ(n + f(n)) 时间内运行,其中 f(n) 表示被排序数组中最初存在的反转次数。
资料来源:http://cs.xidian.edu.cn/jpkc/Algorithm/down/Solution%20to%202-4%20Inversions.pdf
这个问题的测验