public class 快速排序 {
public static void qSort(int[] arr, int low, int high) {
if (low < high) {
int i = low;
int j = high;
int x = arr[i]; // 基准
while (i < j && arr[j] > x)
j--;
if (i < j) {
arr[i] = arr[j];
i++;
}
// 对称
while (i < j && arr[i] < x)
i++;
if (i < j) {
arr[j] = arr[i];
j--;
}
arr[i] = x;
qSort(arr, low, i - 1);
qSort(arr, i + 1, high);
}
}
public static void main(String[] args) {
int[] arr = { 1, 3, 2, 4 };
qSort(arr, 0, arr.length - 1);
for (int i : arr) {
System.out.print(i + " ");
}
}
}
快速排序Java代码
最新推荐文章于 2024-07-17 10:35:12 发布