排序过程中,对尚未确定最终位置的所有元素进行一遍处理称为一“趟”。下列序列中,不可能是快速排序第二趟结果的是( )。

admin2020-06-17  33

问题 排序过程中,对尚未确定最终位置的所有元素进行一遍处理称为一“趟”。下列序列中,不可能是快速排序第二趟结果的是(          )。

选项 A、5,2,16,12,28,60,32,72
B、2,16,5,28,12,60,32,72
C、2,12,16,5,28,32,72,60
D、5,2,12,28,16,32,72,60

答案D

解析 要理解清楚排序过程中一“趟”的含义,题干也进行了解释。一个初始无序序列,所有元素都没有确定最终位置,对所有元素做一次(称为趟)快速排序后一个元素确定最终位置,且将原序列划分成了前后两块,此时前后两块子表是无序的。按“趟”的解释一一对尚未确定最终位置的所有元素都处理一遍才是一趟,所以此时要对前后两块子表各做次快速排序才是一趟快速排序,如果只对一块子表进行了排序,而未处理另一块字表,就不能算是完整的一趟,选项D无论先匹配12还是32,都会将序列分成两块,那么第二趟必须有两个元素匹配,所以D不可能,故选D。
转载请注明原文地址:https://jikaoti.com/ti/MNDjFFFM
0

最新回复(0)