问题 单项选择题

对数据82,16,95,27,75,42,69,34)按关键字非递减顺序进行快速排序,取第一个元素为枢轴,第一趟排序后的结果是()。

A.34,16,69,27,75,42,82,95

B.16,27,75,42,69,34,82,95

C.16,82,27,75,42,69,34,95

D.16,82,95,27,75,42,69,34

答案

参考答案:A

解析:

快速排序是通过一趟排序选定一个关键字介于“中间”的记录,从而使剩余记录可以分成两个子序列分别继续排序,通常称该记录为“枢轴”。

一趟快速排序的具体做法:附设两个指针low和high,它们的初值分别指向文件的第一个记录和最后一个记录。设枢轴记录(通常是第一个记录)的关键字为pivotkey,则首先从high所指位置起向前搜索,找到第一个关键字小于pivotkey的记录并与枢轴记录互相交换,然后从low所指位置起向后搜索,找到第一个关键字大于pivotkey的记录并与枢轴记录互相交换,重复这两步直至low=high为止。

填空题
单项选择题