| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 552 人关注过本帖
标题:请教有关快速排序的问题
取消只看楼主 加入收藏
ybjkl
Rank: 2
等 级:论坛游民
帖 子:86
专家分:85
注 册:2011-6-21
结帖率:95.65%
收藏
已结贴  问题点数:20 回复次数:3 
请教有关快速排序的问题
void QuickSort(int R[],int s,int t)
{
    int temp,low,high;
    low=s;high=t;
    temp=R[s];
    while(low<high)
    {
        while(low<high&&R[high]>temp)
            high--;
            R[low]=R[high];
        while(low<high&&R[low]<temp)
            low++;
            R[high]=R[low];
    }
    R[low]=temp;        
QuickSort(R,s,low-1);
QuickSort(R,low+1,t);
}
大家帮忙看看这个程序有什么问题,我的怎么不能得到正确的排序。多谢啦!
2011-06-23 20:05
ybjkl
Rank: 2
等 级:论坛游民
帖 子:86
专家分:85
注 册:2011-6-21
收藏
得分:0 
没怎么看明白,还可以不用递归的吗?
还有void函数还可以有返回值的吗?
2011-06-23 22:04
ybjkl
Rank: 2
等 级:论坛游民
帖 子:86
专家分:85
注 册:2011-6-21
收藏
得分:0 
回复 4楼 voidx
递归一直就没怎么理解透。你的意思是一趟排序没有问题,递归出了问题吗?
我的想法是一趟排序后分成两部分,分别递归。为什么一次递归后数组元素会被覆盖掉呢?
多谢说明白点,刚好借这机会好好理解下递归。
2011-06-24 09:42
ybjkl
Rank: 2
等 级:论坛游民
帖 子:86
专家分:85
注 册:2011-6-21
收藏
得分:0 
回复 6楼 cosdos
我的程序是什么问题?多谢赐教。
2011-06-24 20:45
快速回复:请教有关快速排序的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017199 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved