1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96
|
public class {
public static void main(String[] args) { int[] arr = {1, 5, 3, 9, 2};
quickSort(arr, 0, arr.length - 1);
System.err.println(JSON.toJSONString(arr)); }
public static void quickSort(int[] arr, int left, int right) { if (arr == null || left >= right) { return; }
int key = arr[left]; int low = left; int high = right;
while (low < high) { while (low < high && arr[high] > key) { high--; }
arr[low] = arr[high];
while (low < high && arr[low] < key) { low++; }
arr[high] = arr[low]; }
arr[low] = key; quickSort(arr, left, low - 1); quickSort(arr, low + 1, right); }
public static void insertSort(int[] arr) { if (arr == null || arr.length < 2) { return; }
for (int i = 0; i < arr.length; i++) { for (int j = i; j > 0; j--) { if (arr[j - 1] > arr[j]) { int temp = arr[j - 1]; arr[j - 1] = arr[j]; arr[j] = temp; } } } }
public static void selectSort(int[] arr) { if (arr == null || arr.length < 2) { return; }
int minIndex; for (int i = 0; i < arr.length - 1; i++) { minIndex = i; for (int j = i + 1; j < arr.length; j++) { if (arr[minIndex] > arr[j]) { minIndex = j; } } if (minIndex != i) { int temp = arr[minIndex]; arr[minIndex] = arr[i]; arr[i] = temp; } } }
public static void bubbleSort(int[] arr) { if (arr == null || arr.length < 2) { return; }
int temp; for (int i = arr.length - 1; i > 0; i--) { for (int j = 0; j < i; j++) { if (arr[j] > arr[j + 1]) { temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } }
}
|
近期评论