public class BubbleSort {
public static void main(String[] args) {
//定义10个数字数组
int[] nums = {3, 1, 2, 4, 7, 6, 5, 8, 10, 9};
//定义是否继续循环
boolean isSwap = true;
//外层正序循环 并且需要交换
for (int i = 0; i < nums.length && isSwap; i++) {
isSwap = false;//设置假如不交换
for (int j = 0; j < nums.length - i - 1; j++) {
//内层循环(全部,最后一个不对比)
if (nums[j] > nums[j + 1]) {
swap(nums, j, j + 1);
isSwap = true;//发生交换
}
}
}
//print
for (int i = 0; i < nums.length; i++) {
System.out.print(nums[i] + "\t");
}
}
private static void swap(int[] nums, int i, int j) {
//i 大值 j
int temp = nums[i]; //将大值放于临时变量
nums[i] = nums[j]; //大值的下标值换成j值(小值靠前)
nums[j] = temp; //j值(小值)下标值换为大值
}
}