对于一个整数数组 [10, 5, 20, 15, 30],如果使用冒泡排序进行升序排序,第一趟排序后数组的状态是怎样的?
答案解析
核心考点是冒泡排序的基本原理。冒泡排序每一趟会将当前最大元素“冒泡”到数组的末尾。第一趟排序,会比较相邻的元素,将较大的元素向后移动,直到找到最大的那个数放在最后。解题思路:从头开始两两比较,如果前一个元素大于后一个元素就交换位置。第一趟比较完,最大值30会移动到数组最后,前面的元素顺序会调整。[10, 5, 20, 15, 30] -> [5, 10, 20, 15, 30] ->[5,10,15,20,30] 第一轮结束。[5, 10, 15, 20, 30],故选项B正确。A选项是错误理解冒泡排序直接得出的完全排序后的结果;C选项错误,第一趟排序后10不会仍然在首位;D选项中5应该在首位。
正确答案:B