第 10 题
在内部排序过程中,对尚未确定最终位置的所有元素进行一遍处理称为一趟排序。下列排序方法中,每一趟排序结束都至少能够确定一个元素最终位置的方法是( )。
Ⅰ.简单选择排序
Ⅱ.希尔排序
Ⅲ.快速排序
Ⅳ.堆排序
Ⅴ.二路归并排序
A. 仅Ⅰ、Ⅲ、Ⅳ
B. 仅Ⅰ、Ⅲ、Ⅴ
C. 仅Ⅱ、Ⅲ、Ⅳ
D. 仅Ⅲ、Ⅳ、Ⅴ
[tag_link]
正确答案:A本题考察不同 内部排序 算法的细节:
- 对于 I,简单选择排序每次选择未排序列中的最小元素放入其最终位置。
- 对于 II,希尔排序每次是对划分的子表进行排序,得到局部有序的结果,所以不能保证每一趟排序结束都能确定一个元素的最终位置。
- 对于 III,快速排序每一趟排序结束后都将枢轴元素放到最终位置。
- 对于 IV,堆排序属于选择排序,每次都将大根堆的根结点与表尾结点交换,确定其最终位置。
- 对于 V,二路归并排序每趟对子表进行两两归并从而得到若干个局部有序的结果,但无法确定最终位置。I、III、IV 正确,本题选择 A。