冒泡排序算法遍历数组,依次比较相邻的两个元素。对于从小到大的排序,如果前一个元素大于后一个元素,则交换它们的位置;对于从大到小的排序,则在前一个元素小于后一个元素时交换。

每一次比较和交换都能将当前最大(或最小)的元素放置到数组的最右端。因此,对于包含 N 个元素的数组,需要进行 N-1 轮比较。每一轮比较的范围都会递减,最终得到有序的数组。

以数组 [8, 9, 7, 1, 2] 为例,使用冒泡排序算法进行从小到大的排序过程如下:

...