冒泡排序的原理就是將最小的依次,冒泡到上面
原理圖
int[] arr = { 1, 43, 2, 4, 53, 232, 44, 24, 54, 5, 6, 6, 231 };
先定義一個一維數組
將第一個最小的數與其他所有的數做比較如果小於該數就將位置交換
public class Test {
public static void main(String[] args) {
int[] arr = { 1, 43, 2, 4, 53, 232, 44, 24, 54, 5, 6, 6, 231 };
for (int i = 0; i < arr.length - 1; i++) {//循環次數是arr.length - 1,應爲是第一個數與其他做比較,所有不包含第一數的次數
int t;
if (arr[i] < arr[i + 1]) {
t = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = t;
}
}
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
}
執行結果如圖,只排序好一位
需要依次排序好所有的數字,所以需要在外面有有for循環
public class Test {
public static void main(String[] args) {
int[] arr = { 1, 43, 2, 4, 53, 232, 44, 24, 54, 5, 6, 6, 231 };
for (int j = 0; j < arr.length - 1; j++) {
for (int i = 0; i < arr.length - 1-j; i++) {
int t;
if (arr[i] < arr[i + 1]) {
t = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = t;
}
}
}
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
}
運行結果