软件水平考试

在第一趟排序之后,一定能把数据表中最大或最小元素放在其最终位置上的排

2016年01月28日来源:软件水平考试 所有评论

试题来源:程序员-数据结构
【单选题】 在第一趟排序之后,一定能把数据表中最大或最小元素放在其最终位置上的排序算法是______。

A.冒泡排序
B.基数排序
C.快速排序
D.归并排序

参考答案:A
网考网解析:

[解析] 对于选项A,冒泡排序将被排序的记录数组R[1..n)垂直排列,每个记录R[i]看作是重量为k i 的气泡。根据轻气泡不能在重气泡之下的原则,从下往上扫描数组R凡扫描到违反本原则的轻气泡,就使其向上“飘浮”。如此反复进行,直到最后任何两个气泡都是轻者在上,重者在下为止。由此可见,冒泡排序第1趟排序之后,最轻的“气泡”一定会被浮到最上面,即能把数据表中最大或最小元素放在其最终位置上。故本题应该选择A。 对于选项B,基数排序的基本思想是:从低位到高位依次对待排序的关键码进行分配和收集,经过d趟分配和收集,就可以得到一个有序序列。所以,基数排序第1趟排序之后,得到的是以数据表中各元素的个位进行排序的结果,不一定... 查看试题解析出处>>

发布评论 查看全部评论

相关推荐