冒泡排序是一种最基本的排序算法,在每轮遍历比较中,比较相邻两个元素的大小,将最大值放置到数组最顶端。
比如数组中的初始元素如下:
[34,53,12,32,56,17]
第一轮遍历:
比较相邻元素,大的交换到右边。即34<53不交换,53>12交换。。。
比较和交换后得到:
[34,12,32,53,17,56]
第二轮遍历得到:
[12,32,34,17,53,56]
第三轮遍历得到:
[12,32,17,34,53,56]
。。。以此类推。
遍历的轮数为(数组长度-1)。每轮遍历中比较的次数为(数组长度-遍历轮数-1)。
Java实现代码如下:
public class PopSort {
public static void main(String[] args) {
int[] array= {34,53,12,32,56,17};
for(int i=0;i<array.length-1;i++) {//遍历轮数控制
for(int j=0;j<array.length-1-i;j++) {
if(array[j]>array[j+1]) {
int temp=array[j+1];
array[j+1]=array[j];
array[j]=temp;
}
}
}
for(int a:array) {
System.out.print(a+" ");
}
}
}