日积月累,加油你最棒!
import java.util.Arrays;
//亮点:无中间变量交换数组大小值
public class BubbleSort {
public static void main(String[] args) {
int array[] = { 3, 4, 67, 56, 23, 7, 5, 19, 5, 17, 47, 8 };
int len = array.length;
long temp;
System.out.println(Arrays.toString(array));
for (int i = 0; i < len - 1; i++) {
for (int j = 0; j < len - 1 - i; j++) {// 内循环每次-1-i
if (array[j] > array[j + 1]) {// 加一次减两次,完成大小值交
//无中间变量交换
array[j] = array[j] + array[j + 1];
array[j + 1] = array[j] - array[j + 1];
array[j] = array[j] - array[j + 1];
}
if (array[j] > array[j + 1]) {
//有中间变量交换
temp = array[j];// 小变大,自然转换
array[j] = array[j + 1];
array[j + 1] = (int) temp;// 大变小,强制换行
}
}
}
System.out.println(Arrays.toString(array));
}
}