| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1466 人关注过本帖
标题:来看看这个题目,请大家提出效率高的方法
只看楼主 加入收藏
小糊涂仙
Rank: 1
等 级:新手上路
帖 子:86
专家分:0
注 册:2007-8-5
收藏
 问题点数:0 回复次数:24 
来看看这个题目,请大家提出效率高的方法
在1-1000之间产生1000个不一样的随机数
搜索更多相关主题的帖子: 效率 
2007-08-10 01:45
aipb2007
Rank: 8Rank: 8
来 自:CQU
等 级:贵宾
威 望:40
帖 子:2879
专家分:7
注 册:2007-3-18
收藏
得分:0 
可以达到线性O(n)。

Fight  to win  or  die...
2007-08-10 02:07
小糊涂仙
Rank: 1
等 级:新手上路
帖 子:86
专家分:0
注 册:2007-8-5
收藏
得分:0 
楼上说的上什么?偶笨笨~不懂

谁能改变,人生的长度 我们都在不断赶路,忘记了出路 去不到终点,回到原点 享受,那走不完的路
2007-08-10 02:29
雨中飞燕
Rank: 3Rank: 3
等 级:禁止访问
威 望:8
帖 子:2200
专家分:0
注 册:2007-8-9
收藏
得分:0 
洗牌法打乱O(n)
过程是先声明数值从1到1000的数组list[1000]
然后i从0到n-1变化,list[i]和list[rand()%1000]交换
如果觉得不够乱就多次运行上一个过程就可以了
2007-08-10 02:33
blueboy82006
Rank: 5Rank: 5
来 自:幻想世界
等 级:贵宾
威 望:16
帖 子:1227
专家分:57
注 册:2007-7-23
收藏
得分:0 

看了上面的发言,似懂非懂,可能是基础太差了吧
可以发个简短的程序来看看吗?
不胜感激啊


2007-08-10 07:47
aipb2007
Rank: 8Rank: 8
来 自:CQU
等 级:贵宾
威 望:40
帖 子:2879
专家分:7
注 册:2007-3-18
收藏
得分:0 
我说的就是4楼的方法,不过不需要运行两次,因为得到的排列概率为1/n!。

不过修正一点,

i <--- 1 to length[a]
在第i次迭带里,将a[i]与a[random(i,n)]交换。

Fight  to win  or  die...
2007-08-10 09:19
野比
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:24
帖 子:1627
专家分:516
注 册:2007-5-24
收藏
得分:0 

喂喂...1000以内要1000个随机数.. 还要不一样的? ...

在开玩笑吗? 那不就是 1 到1000吗?...

你不如说" 把1 到1000的排列打乱"...


女侠,约吗?
2007-08-10 13:27
小糊涂仙
Rank: 1
等 级:新手上路
帖 子:86
专家分:0
注 册:2007-8-5
收藏
得分:0 
呵呵,楼上的,给你举个例子,1~5之间产生5个随机数和产生5个不一样的随机数字是不一样的
1~5产生5个随机数,可以产生重复的,例如随机产生 3,4,3,3,1
而产生5个不一样的随机数,指的是所产生的5个数字"不能相同"

谁能改变,人生的长度 我们都在不断赶路,忘记了出路 去不到终点,回到原点 享受,那走不完的路
2007-08-10 23:31
野比
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:24
帖 子:1627
专家分:516
注 册:2007-5-24
收藏
得分:0 

那麻烦你在1-5之间给我产生5个不一样的随即数看看...谢了


女侠,约吗?
2007-08-11 00:42
小糊涂仙
Rank: 1
等 级:新手上路
帖 子:86
专家分:0
注 册:2007-8-5
收藏
得分:0 

例子很多
例如 1,2,3,4,5
再如 2,4,5,1,3
再再如 3,4,5,1,2
再再再如 5,4,1,2,3
...
......


谁能改变,人生的长度 我们都在不断赶路,忘记了出路 去不到终点,回到原点 享受,那走不完的路
2007-08-11 18:36
快速回复:来看看这个题目,请大家提出效率高的方法
数据加载中...
 
   



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

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