| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 14935 人关注过本帖, 2 人收藏
标题:如何随机产生不重复的数
只看楼主 加入收藏
lrongh
Rank: 2
等 级:论坛游民
帖 子:39
专家分:24
注 册:2009-10-6
收藏
得分:0 
谢谢各位不吝指教!UserYuH的算法简单明了,很容易让人接受,不足之处是使用的辅助空间较大,也许我只需要10或20个数,程序却非得另开一个100个元素的数组,有点太浪费了,另外,如果我需要的是20个任意大小但互不雷同的数怎么办? 广陵绝唱的代码没看太懂(不好意思,我太菜了),num数组中的所有元素应该都等于200吧?if(num[n]==200)这条判断语句岂不是永恒成立?它到底起什么作用?还有,能麻烦你解释一下printf("%2d%c",num[n]=n,++i%5?' ':'\n');这条语句吗?再次感谢两位!

[ 本帖最后由 lrongh 于 2009-10-13 22:39 编辑 ]
2009-10-13 22:35
lrongh
Rank: 2
等 级:论坛游民
帖 子:39
专家分:24
注 册:2009-10-6
收藏
得分:0 
哦,明白了,原理一样,都是在已知数组中做个标记,以防重复。printf里面还能写语句,又学了一招。
2009-10-13 22:53
lrongh
Rank: 2
等 级:论坛游民
帖 子:39
专家分:24
注 册:2009-10-6
收藏
得分:0 
不知还有没有更好的办法能同时满足我提的三个要求?
2009-10-13 22:55
UserYuH
Rank: 12Rank: 12Rank: 12
来 自:毅华
等 级:火箭侠
威 望:8
帖 子:720
专家分:3300
注 册:2009-8-10
收藏
得分:0 
这方法算快了,如觉得占用空间的话,可以用动态数组,随机完20个数就释放〔对于大点的程序这样做才有意义〕。对于任意大小的数是个自定义数据,自写入数组里,一样的方法随机取数。

努力—前进—变老—退休—入土
2009-10-13 23:10
lrongh
Rank: 2
等 级:论坛游民
帖 子:39
专家分:24
注 册:2009-10-6
收藏
得分:0 
明白了,非常感谢!真是个热心的人!
2009-10-14 10:15
lrongh
Rank: 2
等 级:论坛游民
帖 子:39
专家分:24
注 册:2009-10-6
收藏
得分:0 
哪位兄弟能给个基数排序的C源码吗?内部排序就差它了。。。
2009-10-14 12:20
唐兵
Rank: 2
来 自:四川泸州合江
等 级:论坛游民
帖 子:150
专家分:12
注 册:2012-12-1
收藏
得分:0 
哇,真的帅,终于看懂为是啥要另定义一数组了

一个人如果不比自己一把,你永远不知道自己究竟有多厉害
2012-12-11 16:42
快速回复:如何随机产生不重复的数
数据加载中...
 
   



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

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