| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 299 人关注过本帖
标题:求高手指教帮我优化一下我写的这段代码。
只看楼主 加入收藏
jiacheng356
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2012-11-7
结帖率:0
收藏
已结贴  问题点数:20 回复次数:2 
求高手指教帮我优化一下我写的这段代码。

题目是输入一串数字(N+1个)     第一个数字为N   则其后有N个数字进行比较大小   输出次大值和次小值。    我在学校的网站监测有2个测试超时了   希望高手可以教我优化一下。     

学姐对我的点评:你只要很正常的读入n 然后再读入n个数字就行了
你TLE的原因是那两个例子没有以换行符结尾(怪我啊啊啊 切腹谢罪去了)
     【可是我看不懂啊,囧】
下面是我写的代码:
#include

void main()
  {
  int a[101];
  int i=0,n,x,y,z;

  do
    {
    scanf("%d",&a[i++]);
    }
    while(getchar()!='\n');
       printf("\n");
   
    n=a[0];  //第一个输入的数据定义为供比较的有n个数字。
    for(x=0;x<N-1;X++)      n个数字按连续位比较大小,要比较n-1次。
        for(y=1;y<N-X;Y++)
            if(a[y]>a[y+1])
            {z=a[y];a[y]=a[y+1];a[y+1]=z;}
    printf("%d %d\n",a[n-1],a[2]);

  }
搜索更多相关主题的帖子: 换行符 
2012-11-07 20:00
jiacheng356
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2012-11-7
收藏
得分:0 
我又想到了一个问题     要是比较的N个数中    最大值的数有2个是相等   那么次大的就是不是第N-1个了。  这个要怎么办 ???
2012-11-07 20:09
zxd543
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:内蒙古
等 级:贵宾
威 望:17
帖 子:453
专家分:2351
注 册:2012-4-12
收藏
得分:20 
冒泡排序超时 你就换快速排序试试
qsort()库函数

马马虎虎 不吝赐教 我是路过蹭分滴
2012-11-08 16:29
快速回复:求高手指教帮我优化一下我写的这段代码。
数据加载中...
 
   



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

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