冒泡排序通过重复“比较相邻元素并交换它们的顺序”来逐步将最大的元素移动到数组末尾。
(启动排序后点击下面的步骤可以显示详情)
暂无步骤,请点击上面的“开始排序”按钮
1. 初始化:从数列的第一元素开始。
2. 比较相邻元素:对于每一对相邻元素,如果前一个元素大于后一个元素,则交换它们。
3. 遍历:完成一次比较后,最后一个元素是当前未排序部分的最大元素。
4. 重复:对未排序的部分重复步骤2和3,直到没有需要交换的元素为止。
最坏情况:O(n²)(当数组是逆序时)
最好情况:O(n)(当数组已排序时)
平均情况:O(n²)
空间复杂度:O(1)(只需常数级别的额外空间)
冒泡排序是稳定的排序算法,即相同元素的相对顺序不会改变。