快速排序

void quick_sort(int q[], int l, int r)
{
    if(l >= r) return;
    int i = l -1, int j = r + 1,x = q[l + r >> 1];
    while(l < r)
    {
        do(i++); while(q[i] < q[x]);
        do(j--); while(q[j] > q[x]);
        if(i , j) swap(q[i], q[j]);
    }
    quick_sort(q, l , j), quick_sort(q, j +1,r);
//  这里是递归
}
上一篇:leetcode-链表系列-链表去重(leetcode 83)


下一篇:分治排序之快速排序