| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2284 人关注过本帖
标题:求n个数中最小者问题!
只看楼主 加入收藏
论坛
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1372
专家分:0
注 册:2006-3-27
收藏
 问题点数:0 回复次数:32 
求n个数中最小者问题!

千万别以为这问题太简单了

数组中有10个数,如何能在只走一遍数组的情况下找出其中的"两个"最小者,那位会,给个算法

搜索更多相关主题的帖子: 小者 
2006-05-24 19:07
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
收藏
得分:0 
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
main()
{
int a[10],i,ix1,ix2,x1,x2;
srand(time(NULL));
for(i=0;i<10;i++)
printf("%d ",a[i]=rand());
printf("\n");
ix1=0;ix2=1;
if(a[0]>a[1]){ix1=1;ix2=0;}
for(i=2;i<10;i++)
{
if(a[i]>=a[ix2])
continue;
if(a[i]>=a[ix1])
ix2=i;
else
ix2=ix1,ix1=i;
}
printf("最小=%d\n",a[ix1]);
printf("次小=%d\n",a[ix2]);
}

落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-05-24 19:42
独角龙
Rank: 1
等 级:新手上路
帖 子:221
专家分:0
注 册:2006-5-5
收藏
得分:0 


让俺看看行不!


奋斗改变一切!!
2006-05-24 19:51
独角龙
Rank: 1
等 级:新手上路
帖 子:221
专家分:0
注 册:2006-5-5
收藏
得分:0 



srand(time(NULL));
什么意思!?


奋斗改变一切!!
2006-05-24 19:57
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
收藏
得分:0 
回复:(独角龙)[em13]srand(time(NULL));什么意思!?...
以下是引用独角龙在2006-5-24 19:57:00的发言:



srand(time(NULL));

播撒1个随机数“种子”,该种子来自系统时间函数time(0)返回的自1970年1月1日午夜以来的秒数。此举可使不同批次的随机数不至于雷同。


落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-05-24 20:09
菜鸟上路
Rank: 4
等 级:贵宾
威 望:14
帖 子:1120
专家分:0
注 册:2006-3-21
收藏
得分:0 
斑竹果真是强啊

2006-05-24 20:29
独角龙
Rank: 1
等 级:新手上路
帖 子:221
专家分:0
注 册:2006-5-5
收藏
得分:0 

奋斗改变一切!!
2006-05-24 20:53
叶兵
Rank: 1
等 级:新手上路
帖 子:32
专家分:0
注 册:2006-4-14
收藏
得分:0 
你的那十个数怎么会出现啊?  

I believe i can
2006-05-24 22:19
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 
函数不明白动手查行不行? 那就等吧!等知识直接掉都你的头上

叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2006-05-24 22:38
coloar123
Rank: 1
等 级:新手上路
帖 子:111
专家分:0
注 册:2005-1-6
收藏
得分:0 

也可以这样:
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
main()
{
int a[10],i,min,min2 ;
srand(time(NULL));
for(i=0;i<10;i++)
printf("%d ",a[i]=rand());
printf("\n");
min=min2=a[0];
for(i=1;i<10;i++){
if(min>a[i]){
min2=min;
min=a[i];
}
}
printf("最小=%d\n",min);
printf("次小=%d\n",min2);
}


两耳不闻窗外事,专心只读圣贤书
2006-05-24 23:33
快速回复:求n个数中最小者问题!
数据加载中...
 
   



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

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