思路:相邻的两个元素挨个比较,大的元素放在右边小的放在左边
public class Bubblesort {
public static void main(String[] args) {
int[] arr=new int[]{12,5,17,8,9};
//排序前的数组
System.out.println("排序前的数组元素为:");
for (int i = 0; i <arr.length ; i++) {
System.out.print(arr[i]+" ");
}
//冒泡排序法,相邻两个元素依次比较大的元素放在右边小的放在左边
for(int j=1;j<arr.length-1;j++){//控制轮数的
for (int i = 0; i <arr.length-j; i++) {//这个i只需要去到arr.length-2
if(arr[i]>arr[i+1]){
arr[i]=arr[i]+arr[i+1];
arr[i+1]=arr[i]-arr[i+1];
arr[i]=arr[i]-arr[i+1];
}
}
}
//排好序之后的数组
System.out.println();
System.out.println("排好序之后的数组元素为:");
for (int i = 0; i <arr.length ; i++) {
System.out.print(arr[i]+" ");
}
}
}
/*运行结果
排序前的数组元素为:
12 5 17 8 9
排好序之后的数组元素为:
5 8 9 12 17
*/