以下是数组 [5, 3, 8, 6, 2] 的逐步冒泡排序过程:
第一阶段:
进行首轮比较与交换:比较 5 与 3,因为 5 大于 3,不进行交换;而后比较 5 与 8,5 小于 8,仍不交换。继续至 8 和 6,8 大于 6,进行交换,变成 [3, 5, 6, 8, 2]。8 与 2 比较后交换位置,完成第一轮排序。
第二阶段:
在已排序的序列基础上继续进行排序操作:比较 3 与接下来的数 5,因 3 小于 5 不交换;继续比较 5 与 6,也不进行交换;而 6 与最末尾的 2 比较后,因为 6 大于 2 进行交换。经过此轮后,较大的数逐渐“冒泡”至序列的末尾。
第三阶段:
持续上一步骤的排序逻辑:3 与下一个数比较后仍不交换;而后比较的数字中发生一次较小的数移动到较大的数的前面——数字 5 和数字 2 的交换。这样较大的数会逐渐移动到正确的位置。
第四阶段:
最后的排序操作:比较当前最小的数 2 与它旁边的数 3,因为 2 小于 3,则交换它们的位置。此步骤后,较小的数会逐渐移动到序列的开始位置。
排序完成:
经过一系列的冒泡操作后,数组已经有序排列为 [2, 3, 5, 6, 8]。这表明了冒泡排序的整个过程。
由上述过程可知,对这五个数进行排序共需经历四轮操作。且每一作中需要进行元素交换的次数逐渐减少。