美文网首页
快速排序

快速排序

作者: 猴子扔飞镖 | 来源:发表于2018-12-18 12:53 被阅读0次

    public static void main(String[] args) {
    int[] a = {7, 5, 3, 1, 21, 6, 4, 8, 7,10, 17, 2, 9, 11};
    quickSort(a, 0, a.length - 1);
    System.out.println(Arrays.toString(a));
    }

    public static void quickSort(int[] a, int left, int right) {
    int i = left;
    int j = right;
    int pivot = a[left];
    while (i < j) {
    while (i < j && a[j] >= pivot) //从右往左找比基准值小的数
    j--;
    if (i < j) {
    int temp = a[j];
    a[j] = a[i];
    a[i] = temp;
    i++;
    }
    while (i < j && a[i] <= pivot) //从左往右找比基准值大的数
    i++;
    if (i < j) {
    int temp = a[i];
    a[i] = a[j];
    a[j] = temp;
    j--;
    }
    }

        if (i > left) {
            quickSort(a, left, i - 1);
        }
        if (j < right) {
            quickSort(a, i + 1, right);
        }
    

    }

    相关文章

      网友评论

          本文标题:快速排序

          本文链接:https://www.haomeiwen.com/subject/txokkqtx.html