早教吧 育儿知识 作业答案 考试题库 百科 知识分享
早教吧考试题库频道 --> 计算机类考试 -->计算机三级 -->

设待排序关键码序列为(25,18,9,33,67,82,53,95,12,70)。要按关键码值递增的顺序进行排序,采取以第

题目

设待排序关键码序列为(25,18,9,33,67,82,53,95,12,70)。要按关键码值递增的顺序进行排序,采取以第一个关键码为分界元素的快速排序法,第一趟完成后关键码33被放到了第几个位置?

A.3

B.5

C.7

D.9

参考答案
正确答案:D
解析:快速排序法的基本方法是:在待排序序列中任取一记录,以它为基准用交换的方法将所有的记录分成两部分,关键码值比它小的一部分,关键码值比它大的另一部分,再分别对两个部分实施上述过程,一直重复到排序完成。在本题中采取以第一个关键码25为分界元素,按照快速排序的思想,首先15与最后一个元素70比较,位置不变,然后与12比较,12小于25,故交换位置,此时关键码序列为(12,18,9,33,67,U2,53, 95,25,70)。再用25与18比较,位置不变;与9比较,位置不变;与33比较,33大于25,故交换位置,现在序列为(12,18,9,25,67,82,53,95,33,70),33移到了第9位,此后的第一趟排序不会再影响其位置。