对数据{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

admin2012-04-20  29

问题 对数据{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、 
B、 
C、 
D、 

答案A

解析 快速排序是通过一趟排序选定一个关键字介于“中间”的记录,从而使剩余记录可以分成两个子序列分别继续排序,通常称该记录为“枢轴”。
   一趟快速排序的具体做法:附设两个指针low和high,它们的初值分别指向文件的第一个记录和最后一个记录。设枢轴记录(通常是第一个记录)的关键字为pivotkey,则首先从high所指位置起向前搜索,找到第一个关键字小于pivotkey的记录并与枢轴记录互相交换,然后从low所指位置起向后搜索,找到第一个关键字大于pivotkey的记录并与枢轴记录互相交换,重复这两步直至low=high为止。
转载请注明原文地址:https://jikaoti.com/ti/qFa7FFFM
0

相关试题推荐
最新回复(0)