| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1273 人关注过本帖
标题:一道快速排序题,我超时了,求效率高的做法,谢谢
取消只看楼主 加入收藏
jtyf1314
Rank: 1
来 自:台州
等 级:新手上路
帖 子:6
专家分:2
注 册:2012-6-9
结帖率:100%
收藏
已结贴  问题点数:8 回复次数:1 
一道快速排序题,我超时了,求效率高的做法,谢谢
描述


给定n个整数,请使用快速排序算法对其进行从小到大排序。


输入


输入数据有多组,每组包含2行,第一行为正整数n(n<=100000),第二行为n个整数。


输出


每组数据占一行,每行输出排序后的n个整数,以空格分开。


样例输入


5
1 3 2 4 5
6
2 5 1 3 3 2

我的代码
#include<stdio.h>
int main()
{
    int i,j,n,a[100000],t;
    while(scanf("%d",&n)!=EOF)
    {
        for(i=0;i<n;i++)
        scanf("%d",&a[i]);
        for(i=0;i<n-1;i++)
        for(j=0;j<n-1-i;j++)
        {
            if(a[j]>a[j+1])
            {    t=a[j];
                a[j]=a[j+1];
                a[j+1]=t;
            }
        }
        for(i=0;i<n-1;i++)
        { printf("%d ",a[i]); }
        printf("%d\n",a[n-1]);
    }
    return 0;
}

样例输出


1 2 3 4 5
1 2 2 3 3 5

搜索更多相关主题的帖子: 快速 include 正整数 
2012-06-13 21:52
jtyf1314
Rank: 1
来 自:台州
等 级:新手上路
帖 子:6
专家分:2
注 册:2012-6-9
收藏
得分:0 
恩,我今天看了些快排的内容,有点理解了、

2012-06-15 14:49
快速回复:一道快速排序题,我超时了,求效率高的做法,谢谢
数据加载中...
 
   



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

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