在待排序的一组关键码序列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 的情形,则称此类排序为不稳定的。___________是稳定的排序方法。
【正确答案】 D
【答案解析】解析:本题考查数据结构基础知识。 冒泡排序是稳定的排序方法,因为元素向前或向后交换时,都是在相邻的位置进行,因此可以保证关键码相同的元素不作交换。 快速排序主要通过划分实现排序,在划分序列时,基本思路是将序列后端比基准元素小者移到前端,将序列前端中比基准元素大者移到后端,元素往前移动或往后移动时会跨越中间的若干个元素,这样关键码相同的元素的相对位置就可能改变,所以快速排序是不稳定的排序方法。 简单选择排序、堆排序的过程中,同样存在元素移动时会跨越若干个元素的情况,所以也是不稳定的排序方法。