在待排序的一组关键码序列k
1
,k
2
,…,k
n
中,若k
i
和k
j
相同,且在排序前k
i
领先于k
j
,那么排序后,如果k
i
和k
j
的相对次序保持不变,k
i
仍领先于k
j
,则称此类排序为稳定的。 若在排序后的序列中有可能出现k
j
领先于k
i
的情形,则称此类排序为不稳定的。___________是稳定的排序方法。
A、
快速排序
B、
简单选择排序
C、
堆排序
D、
冒泡排序
【正确答案】
D
【答案解析】
解析:本题考查数据结构基础知识。 冒泡排序是稳定的排序方法,因为元素向前或向后交换时,都是在相邻的位置进行,因此可以保证关键码相同的元素不作交换。 快速排序主要通过划分实现排序,在划分序列时,基本思路是将序列后端比基准元素小者移到前端,将序列前端中比基准元素大者移到后端,元素往前移动或往后移动时会跨越中间的若干个元素,这样关键码相同的元素的相对位置就可能改变,所以快速排序是不稳定的排序方法。 简单选择排序、堆排序的过程中,同样存在元素移动时会跨越若干个元素的情况,所以也是不稳定的排序方法。
提交答案
关闭