冒泡排序:重复访问待排序数,遍历素组,元素俩俩比较,每次将需要的元素选出来。
优化:当一趟遍历中数组元素都没有发生交换,数组已经有序。
选择排序:这俩个东西很像,选择是假定一个最小(大)的元素,遍历比较,小于它就重新赋值,每次选择一个有序序列出来。
public void BubblSort(int[] arr) {
for (int i = 1; i < arr.length; i++) {
boolean flag = false;
for (int j = 0; j < arr.length - i; j++) {
if (arr[j] > arr[i]) {
flag = true;
//交换元素不引入变量
arr[i] ^= arr[j] ^= arr[i];
arr[j] ^= arr[i];
}
}
if (!flag)
break;
}
}