目录
1、需求
排序数组 int[] arr = {76,75,82,4,6,1,3,5,23,4,2,3,4,12,34,32};
2、冒泡
这里的n指的时数组的长度
下标 从0 到 n-1 中两两比较,谁大谁去后面
下标从0 到 n-2 中两两比较,谁大谁去后面
以此类推,周而复始....
3、代码
时间复杂度O()
import java.util.Arrays;
public class BubbleSortCase {
public static void main(String[] args) {
int[] arr = {76,75,82,4,6,1,3,5,23,4,2,3,4,12,34,32};
bubbleSort(arr);
System.out.println(Arrays.toString(arr));
}
private static void bubbleSort(int[] arr) {
int length = arr.length;
if (arr == null || length < 2) {
return;
}
/**
* 0 ~ n-1 两两比较,谁大,谁往后
* 0 ~ n-2
* 0 ~ n-3
* ...
*/
for (int i = length - 1; i > 0; i--) {
for (int j = 0; j < i; j++) {
if (arr[j] > arr[j+1]) {
swap(arr, j, j+1);
}
}
}
}
private static void swap(int[] arr, int i, int j) {
int tem = arr[i];
arr[i] = arr[j];
arr[j] = tem;
}
}