其他分享
首页 > 其他分享> > 快速排序

快速排序

作者:互联网

题目链接

快速排序板子题,练习快速排序的代码,下面是排序算法的一些对比

快速排序的思路图

快速排序的代码

#include <iostream>
using namespace std;
const int N = 1e5 + 10;
int q[N];
int quick_sort(int q[], int l, int r)
{
    if (l >= r) return 0;
    else
    {
        int i = l - 1, j = r + 1, x = q[l + r >>1 ];
        while (i < j)
        {
            do i ++; while(q[i] < x);
            do j --; while(q[j] > x);
            if(i < j) swap(q[i], q[j]);
        }
        quick_sort(q, l, j);
        quick_sort(q, j + 1, r);
        return 0;
    }
}
int main()
{
    int n;
    scanf("%d", &n);
    for (int i = 0; i < n; i ++) scanf("%d", &q[i]);
    quick_sort(q, 0, n - 1);
    for (int i = 0; i < n; i ++) printf("%d ", q[i]);
    return 0;
}

标签:sort,return,int,++,quick,排序,快速
来源: https://www.cnblogs.com/amour233/p/16466054.html