老生常谈——冒泡排序

本文详细介绍了冒泡排序的基本原理,通过类比站队排序来解释这一简单易懂的算法。内容包括冒泡排序的过程,以及如何通过判断是否发生交换来优化排序过程,减少不必要的比较。
摘要由CSDN通过智能技术生成

基本冒泡排序

冒泡排序是一种非常易于了解的排序,它和我们小学时候站队是一样的道理:从第一个人开始,每次只和他右边的人相比较,如果第一个人比第二个人高,那么交换这两人的位置。否则,则从第二个人开始,继续如此往下,直到最后一个人。每趟下来,排在最右边的就是最高的。如果有n个人,那么执行n-1趟,整个队伍就是有序的。
为了方便理解,我们用图形来演示,原始的队伍是:

第一趟排序的过程:
1号和2号相比,1号发现自己比2号矮,无需交换,接下来,从2号开始;
2号和3号相比,2号发现自己比3号矮,同样无需交换,接下来,从3号开始;
3号和4号相比,3号发现自己比4号高,那么3号和4号交换位置

这样第一躺排序的过程就完成了,如下:
这里写图片描述

接下来我们继续来看第二趟排序的过程:
1号和2号相比,1号发现自己比2号矮,无需交换,接下来,从2号开始;
2号和3号相比,2号发现自己比3号高,那么2号和3号交换位置
因为在第一趟排序中,已经确定了4号是最高的,因此3号无需和4号比较了

第二趟排序完成后如下:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值