基本冒泡排序
冒泡排序是一种非常易于了解的排序,它和我们小学时候站队是一样的道理:从第一个人开始,每次只和他右边的人相比较,如果第一个人比第二个人高,那么交换这两人的位置。否则,则从第二个人开始,继续如此往下,直到最后一个人。每趟下来,排在最右边的就是最高的。如果有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号比较了
第二趟排序完成后如下: