冒泡排序(Bubble Sort)
冒泡排序,有时也被称做沉降排序,是一种比较简单的排序算法。这种算法的实现是通过遍历要排序的列表,把相邻两个不符合排列规则的数据项交换位置,然后重复遍历列表,直到不再出现需要交换的数据项。当没有数据项需要交换时,则表明该列表已排序。
中心思想:重复地走访要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来
算法描述:
1、比较相邻的元素,如果第一个比第二个大,就交换它们
2、对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对,这样在最后对元素就是最大的数
3、针对所有的元素,重复以上的步骤(除了最后一个)
4、重复步骤1~3,直到排序完成
原理图:
复杂度
算法 | 最好情况 | 平均 |
---|