快速排序

来源:互联网 发布:皇图手游端口充值1:34 编辑:程序博客网 时间:2024/05/30 23:08

void quick_sort(int s[], int l, int r){    int i, j, x;    if (l < r)    {        i = l;        j = r;        x = s[i];        while (i < j)        {            while(i < j && s[j] > x)                j--; /* 从右向左找第一个小于x的数 */            if(i < j)            {                s[i] = s[j];                i++;            }            while(i < j && s[i] < x)                i++; /* 从左向右找第一个大于x的数 */            if(i < j)            {                s[j] = s[i];                j--;            }        }        s[i] = x;        quick_sort(s, l, i-1); /* 递归调用 */        quick_sort(s, i+1, r);    }}



0 0
原创粉丝点击