package com.eduask.test;
public class 冒泡排序 {
/**
* 對一個一維數組進行冒泡排序
* ???什麼是冒泡
*
* 兩兩相交,兩兩比較,高的上浮
*
*/
public static void main(String[] args) {
int [] nums = {11,56,2,5,99,101};
System.out.println("未排序:");
for(int i = 0;i<nums.length;i++){
System.out.print(nums[i]+"\t");
}
for(int i = 0;i<nums.length-1;i++){ //外層控制的輪數
System.out.println("第"+(i+1)+"輪:");
//內層控制比較次數
for(int j = 0;j<nums.length-i-1;j++){
//比較 數組的第j位 和j+1位比較
if(nums[j]<nums[j+1]){
//定義變量,完成位置交換
int temp = nums[j+1];
nums[j+1] = nums[j];
nums[j] = temp;
}
System.out.print("第"+(j+1)+"次\t");
for(int k = 0;k<nums.length;k++){
System.out.print(nums[k]+"\t");
}
System.out.println();
}
}
System.out.println();
System.out.println("已排序:");
for(int i = 0;i<nums.length;i++){
System.out.print(nums[i]+"\t");
}
}
/**
*我們第一排 5個人
* 比較4輪
* 第一輪:4
* 第二輪:3
* 第三輪:2
* 第四輪:1
*
*
*/
}