1.算法描述
冒泡算法和选择排序一样,也属于蛮力算法。简单描述为:在一个长度为n的数列中,相邻的数字之间两两比较,如果两个数字的大小排序不符合排序要求(降序或升序),则交换这两个数字的位置,依次比较,直到最后两个数字之间比较结束,这样最大的数字放到了列表的最后的位置,然后再从[0,n-2]个数中进行比较,第二大数字最后放到数列的倒数第二个位置...重复这样的操作n-1次,排序完成。简单记忆为:两两比较,越比越少,重复n-1次。
2.实例
使用冒泡排序将下列数列按升序排列
5 2 9 1 4 3
第一次排序
5和2不符合升序排列,互换后数列如下:
2 5 9 1 4 3
5和9符合升序排序,位置不变,9和1不符合升序排序,位置互换,互换后数列如下:
2 5 1 9 4 3
9和4不符合升序排序,位置互换,互换后数列如下:
2 5