冒泡排序的运作如下:
1、比较相邻的元素,如果第一个比第二个大,则交换该两个元素位置。
2、对每一对相邻的元素进行同样的工作,从最开始的一对到最后的一对,至此最后的元素应该是最大的数。
3、除去最后最大的数,其他所有元素重复以上步骤。
4、重复以上步骤直至没有任何一对数字需要进行比较。
假如有如下一堆数: 7 15 78 5 99 52
算法代码演示:
/**
* 冒泡排序算法
* @author liujunwei1016
*
*/
public class TestBubbleSort {
public static void main(String[] args) {
int[] values = {7,15,78,5,99,52};
int temp =0;
for(int j =0;j<values.length-1;j++) {
for(int i=0;i<values.length-1-j;i++) {
//比较大小 换顺序
if(values[i]>values[i+1]) {
temp = values[i];
values[i] = values[i+1];
values[i+1] = temp;
}
System.out.println(Arrays.toString(values));
}
System.out.println("-----------------------------");
}
}
}
运行效果如下: