public class BubbleSort {
public static void main(String[] args) {
int[] arr = {1,9,2,8,3,7,4,6,8,2,5,0 };
print(arr, "初始");
bubbleSort(arr);
print(arr, "结果");
}
private static void bubbleSort(int[] arr) {
int temp = 0;
for (int i = 0; i < arr.length; i++) {
for (int j = 0; j < arr.length - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
temp = arr[j + 1];
arr[j + 1] = arr[j];
arr[j] = temp;
}
}
print(arr, "第" + (i + 1) + "轮");
}
}
//打印数组
private static void print(int[] arr, String str) {
for (int i = 0; i < arr.length; i++) {
if (i != arr.length - 1) {
if (i == 0) {
System.out.print("[" + arr[i] + ",");
} else {
System.out.print(arr[i] + ",");
}
} else {
System.out.println(arr[i] + "]" + "----" + str);
}
}
}
}
[1,9,2,8,3,7,4,6,8,2,5,0]----初始
[1,2,8,3,7,4,6,8,2,5,0,9]----第1轮
[1,2,3,7,4,6,8,2,5,0,8,9]----第2轮
[1,2,3,4,6,7,2,5,0,8,8,9]----第3轮
[1,2,3,4,6,2,5,0,7,8,8,9]----第4轮
[1,2,3,4,2,5,0,6,7,8,8,9]----第5轮
[1,2,3,2,4,0,5,6,7,8,8,9]----第6轮
[1,2,2,3,0,4,5,6,7,8,8,9]----第7轮
[1,2,2,0,3,4,5,6,7,8,8,9]----第8轮
[1,2,0,2,3,4,5,6,7,8,8,9]----第9轮
[1,0,2,2,3,4,5,6,7,8,8,9]----第10轮
[0,1,2,2,3,4,5,6,7,8,8,9]----第11轮
[0,1,2,2,3,4,5,6,7,8,8,9]----第12轮
[0,1,2,2,3,4,5,6,7,8,8,9]----结果