Chinaunix首页 | 论坛 | 博客
  • 博客访问: 342658
  • 博文数量: 72
  • 博客积分: 2130
  • 博客等级: 大尉
  • 技术积分: 857
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-05 16:10
文章分类

全部博文(72)

文章存档

2010年(5)

2009年(14)

2008年(53)

分类: C/C++

2009-05-31 22:22:45

void qsort(int v[], int left, int right)
{
   int i, last;
   if (left >= right)
        return ;
    swap(v, left, (left + right)/2);
    last = left;
    for ( i= left+1; i<=right; i++)
        if (v[i] < v[left]
            swap(v, ++last; i);
    swap(v, left, last);
    qsort(v, left, last-1);
    qsort(v, last+1, right);
}
void swap(int v[], int i, int j)
{
    int temp;
    temp = v[i];
    v[i] = v[j];
    v[j] = temp;
}

阅读(919) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~