问题
单项选择题
设有n个结点进行排序,不稳定排序是 (1) ;快速排序的最大比较次数是 (2) 。
(2) ()
A.nlog2n
B.n2
C.n2/2
D.n
答案
参考答案:B
解析:
的记录之间的相对次序发生变化,则称这种排序方法是不稳定的。题目选项中,只有shell排序是不稳定的。第1空的正确答案为选项C。
快速排序利用分治法的基本思想:将原问题分解为若干个规模更小但结构与原问题相似的子问题。递归地解这些子问题,然后将这些子问题的解组合为原问题的解。它的最坏情况是,每次划分选取的基准都是当前无序区中关键字最小(或最大)的记录,划分的结果是基准左边的子区间为空(或右边的子区间为空),而划分所得的另一个非空的子区间中记录数目,仅仅比划分前的无序区中记录个数减少一个。因此,快速排序必须做n-1次划分,第i次划分开始时区间长度为n-i+1,所需的比较次数为n-i(1≤i≤n-1),故总的比较次数达到最大值:
Cmax=n(n-1)/2=n2
第2空的正确答案为选项B。