动画图解一-冒泡排序算法-algviz
1439
2023.02.24
2023.02.24
发布于 未知归属地

冒泡排序是大家接触的比较多的一种排序算法,因算法运行起来像是气泡冒出水面而得名。

就像下面的动画:随着算法的运行,序列中较大的元素从序列的左侧逐渐移动到右侧:

BubbleSort_sec.gif

基本原理

冒泡排序和插入排序较为相似,算法在每轮的扫描过程中依次比较两个相邻元素的大小,如果两个元素是逆序的,则交换两元素的位置。假设算法从左向右扫描➡,每次将相邻两个元素中较大的元素放到后面,那么经过该轮扫描之后,扫描过的序列中的最大值将会跑到扫描序列最右边的位置,重复执行扫描过程直到所有元素都被排序即可。

算法实现

下面是冒泡排序算法的代码运行过程演示:

BubbleSort.gif

算法特点

冒泡排序算法同样属于基于比较的排序算法,排序结果具有稳定性,但无论输入数据的序列如何,算法都需要进行 次的比较操作,因此在部分算例上该算法不如插入排序算法高效。对于大规模算例,冒泡排序更是慢的让人头皮发麻。

PS:欢迎关注我的力扣账号,了解更多算法动画知识!

评论 (0)