对于一个初始序列 [5, 2, 8, 1, 9],使用冒泡排序进行第一趟排序后,序列的状态是什么?
答案解析
核心考点:冒泡排序的基本过程。冒泡排序的核心思想是相邻元素两两比较,将较大的元素逐步“冒泡”到最后。
解题思路:第一趟排序会进行多次相邻元素比较和交换,将最大值放到最后。具体步骤如下:
1. 比较 5 和 2,交换,得到 [2, 5, 8, 1, 9]
2. 比较 5 和 8,不交换,得到 [2, 5, 8, 1, 9]
3. 比较 8 和 1,交换,得到 [2, 5, 1, 8, 9]
4. 比较 8 和 9,不交换,得到 [2, 5, 1, 8, 9]。此时,9 已是最大值,不需要继续比较。
因此第一趟排序结束后,序列是 [2, 5, 1, 8, 9]。
选项分析:
- A:[2, 5, 1, 8, 9],正确,第一趟排序后的结果。
- B:[2, 5, 8, 1, 9],错误,第一趟排序中8和1交换过位置
- C:[5, 2, 1, 8, 9],错误,第一趟排序中 5和2应该交换位置。
- D:[2, 5, 8, 9, 1],错误,第一趟排序中 1和8以及9的顺序错误。
易错点:混淆冒泡排序的比较和交换过程,误以为一次比较即可到位。需要注意每一轮相邻比较和交换,以及每一趟结束时最大值移到最后。
正确答案:A