基本思想:在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对
相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:每当两相邻的
数比较后发现它们的排序与排序要求相反时,就将它们互换。
所以冒泡排序是一种稳定排序算法
图例
java实现
public class MaoPAO {
/**
* 冒泡排序
*
* @param lists
* @return
*/
public void sorts(int lists[]) {
int temp;
for (int i = 0; i < lists.length - 1; i++) {
for (int j = 0; j < lists.length - 1-i; j++) {
if (lists[j] >= lists[j + 1]) {
temp = lists[j]; //交换位置属于交换排序的一种
lists[j] = lists[j + 1];
lists[j + 1] = temp;
}
}
}
}
}