在待排序的一组关键码序列k1,k2,…,kn中,若ki和kj相同,且在排序前ki领先于kj,那么排序后,如果ki和kj的相对次序保持不变,ki仍领先于kj,则称此类排序为稳定的。 若在排序后的序列中有可能出现kj领先于ki的情形,则称此类排序为不稳定的。_

admin2021-01-13  50

问题 在待排序的一组关键码序列k1,k2,…,kn中,若ki和kj相同,且在排序前ki领先于kj,那么排序后,如果ki和kj的相对次序保持不变,ki仍领先于kj,则称此类排序为稳定的。
若在排序后的序列中有可能出现kj领先于ki的情形,则称此类排序为不稳定的。___________是稳定的排序方法。

选项 A、快速排序
B、简单选择排序
C、堆排序
D、冒泡排序

答案D

解析 本题考查数据结构基础知识。
冒泡排序是稳定的排序方法,因为元素向前或向后交换时,都是在相邻的位置进行,因此可以保证关键码相同的元素不作交换。  
快速排序主要通过划分实现排序,在划分序列时,基本思路是将序列后端比基准元素小者移到前端,将序列前端中比基准元素大者移到后端,元素往前移动或往后移动时会跨越中间的若干个元素,这样关键码相同的元素的相对位置就可能改变,所以快速排序是不稳定的排序方法。
简单选择排序、堆排序的过程中,同样存在元素移动时会跨越若干个元素的情况,所以也是不稳定的排序方法。
转载请注明原文地址:https://kaotiyun.com/show/foNZ777K
0

最新回复(0)