看流星社区

 找回密码
 注册账号
查看: 1806|回复: 0

C++实现快速排序算法

[复制链接]

该用户从未签到

发表于 2013-3-23 08:41:59 | 显示全部楼层 |阅读模式
int partition(int* a,int l,int r)

    {

    int i=l-1,j=r,v=a[r];

    while(1)

    {

    while(a[++i]<v||a[--j]>v) if(j<=i) break;

    if(i>=j)

    break;

    swap(a[i],a[j]);

    }

    swap(a[i],a[r]);

    return i;

    }

    void qsort(int* a,int l,int r)

    {

    if(l>=r) return;

    int i = partition(a,l,r);

    qsort(a,l,i-1);

    qsort(a,i+1,r);

    }
点击按钮快速添加回复内容: 支持 高兴 激动 给力 加油 苦寻 生气 回帖 路过 感恩
您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

小黑屋|手机版|Archiver|看流星社区 |网站地图

GMT+8, 2024-5-2 06:21

Powered by Kanliuxing X3.4

© 2010-2019 kanliuxing.com

快速回复 返回顶部 返回列表