Logo
Section 1 / 3

冒泡排序简介

冒泡排序通过交换顺序错误的元素来对数组进行排序。

导入

冒泡排序简介

冒泡排序通过交换顺序错误的元素来对数组进行排序。

算法从数组的第一个元素开始,一直遍历到最后一个元素,持续进行这一过程,直到有一次完整的遍历中没有发生任何交换为止!这种不断“上浮”的效果就像气泡一样,因此得名“冒泡排序”。

我们希望将数组 [4, 2, 1, 3] 按升序排列。

  1. 我们从数组的第一个元素 4 开始。下一个元素 2 比 4 小,说明顺序错误,两者交换位置,然后继续处理下一个元素。

  2. 由于发生了交换,当前元素仍然是 4。我们将其与下一个元素 1 比较,发现 1 更小,于是它们交换。

  3. 再次发生交换后,当前元素仍为 4。我们将其与下一个元素 3 比较,3 更小,因此交换。此时已到达数组末尾。由于本次遍历中有交换发生,说明数组尚未完全有序,因此需要重新从第一个元素开始新一轮遍历。

  4. 当前元素 2 比 1 大,两者交换。

  5. 当前元素 2 比 3 小,无需交换。

  6. 当前元素 3 比 4 小,无需交换。虽然此时数组看起来已经有序,但算法只有在一次完整遍历中没有任何交换发生时才会结束。

  7. 当前元素 1 比 2 小,无需交换。

  8. 当前元素 2 比 3 小,无需交换。

  9. 当前元素 3 比 4 小,无需交换。

  10. 一次完整的遍历中没有发生任何交换!说明数组已成功排序,冒泡排序算法结束返回。

排序算法

冒泡排序的实现