| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 348 人关注过本帖, 1 人收藏
标题:一个快速排序问题,高手进!!!
取消只看楼主 加入收藏
a13468954732
Rank: 1
等 级:新手上路
帖 子:8
专家分:3
注 册:2010-9-25
结帖率:50%
收藏(1)
已结贴  问题点数:10 回复次数:2 
一个快速排序问题,高手进!!!
程序代码:
下面是我写的一个快速排序的实现,但得不到正确结果,希望朋友们帮忙看下,谢谢!


#include<stdio.h>
#include<stdlib.h>


int PARTITION(int a[],int start,int end){
    int x=a[end];
    int i=start-1;
    int temp1,temp2;
    for(int j=start;j<=end-1;j++){
        if(a[j]<=x){
            i++;
            temp1=a[i];a[i]=a[j];a[j]=temp1;
        }
    }
    temp2=a[i+1];a[i+1]=x;x=temp2;
    return i+1;
}

void QuickSort(int a[],int start,int end){
    if(start<end){
        int q=PARTITION(a,start,end);
        QuickSort(a,start,q-1);
        QuickSort(a,q+1,end);
    }
}
int main(){
    int n,*pt;
    printf("input the size of array:\n");
    scanf("%d",&n);
    pt=(int *)malloc(n*sizeof(int));
    printf("input n numbers:\n");
    for(int i=0;i<n;i++)
        scanf("%d",&pt[i]);
    QuickSort(pt,0,n-1);
    printf("the sorted numbers:\n");
    for(int j=0;j<n;j++)
        printf("%d  ",&pt[j]);
    return 0;
}

搜索更多相关主题的帖子: 朋友 
2010-09-25 16:56
a13468954732
Rank: 1
等 级:新手上路
帖 子:8
专家分:3
注 册:2010-9-25
收藏
得分:0 
都发这么久了,看的人也挺多的,难道就没有人愿意说点什么吗,这个问题困扰小弟一个下午,知道的说下,不甚感激!!!
2010-09-25 20:52
a13468954732
Rank: 1
等 级:新手上路
帖 子:8
专家分:3
注 册:2010-9-25
收藏
得分:0 
回复 2楼 a13468954732
呵呵,哥们,谢了,原来是哪个问题,汗颜!
下次问问题会注释的,多谢提醒!
再次感谢!
2010-09-25 23:24
快速回复:一个快速排序问题,高手进!!!
数据加载中...
 
   



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

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