冒泡排序:从下标为0的开始,相邻的数据两两比较,将较大的数值放到后面,外层循环一轮结束,最大数值已放在最后面。
代码如下:
public static void bubbleSort(int[] array) {
int temp = 0;
for (int i = 0; i < array.length - 1; i++) {
for (int j = 0; j < array.length - 1 - i; j++) {
if (array[j] > array[j + 1]) {
temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}
}
}
System.out.println(Arrays.toString(array));
}
冒泡排序之优化:在外循环部分添加flag,让8,9,10部分,不用在进行外层循环。
代码如下:
public static void bubbleSortByPlus(int[] array) {
int temp = 0;
boolean flag = true;
for (int i = 0; i < array.length && flag; i++) {
flag = false;
for (int j = 0; j < array.length - i - 1; j++) {
if (array[j] > array[j + 1]) {
temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
flag = true;
}
}
}
System.out.println(Arrays.toString(array));
}
冒泡排序之API:简单Arrays使用
代码如下:
public static void bubbleSortByArrays(int[] array) {
Arrays.sort(array);
System.out.println(Arrays.toString(array));
}