贤知有您 发表于 2012-6-19 09:28:24

请教随机抽取不重复的问题

假设我想在 1-100里面抽取10个不重复的数到 y1-y10.请问有什么简洁的方法可以实现呢?
要比较通用的,抽30个也可以这样.
;aiel;

文兄 发表于 2012-6-19 10:48:25

不懂路过

caijian 发表于 2012-6-19 11:43:25

我能想到的就是调用函数比较之类的法子,不过似乎过于繁琐了点。
坐等寻梦大等高人出手吧。

非要中文么 发表于 2012-6-19 11:45:37

ERM有数组么,刚学不知道;dao;

没有的话很痛苦

寻梦人 发表于 2012-6-19 11:47:38

回复 1# 的帖子

这个要逐个比较,恐怕是比较繁琐!

如果预先约定范围,就比较简单!

贤知有您 发表于 2012-6-19 13:00:07

回复 5# 的帖子

就算约定范围.
比如 1-100 抽 50个.也比较麻烦.
每次随机一个数,然后跟之前抽过的作比较,如果相同,则又重新随机一次,再比较?
越到后面,比较次数越来越多.
这样要多少次才能完成呢,好像很烦.

近似的方法倒是有,就是用一定的次数来随机交换1-100的2个位置,再抽取其中连续的N个.

歐靈 发表于 2012-6-19 13:21:04

一头雾水啊...

fly123 发表于 2012-6-19 17:24:48

这个真的很难啊。复杂的数学题。哎哟,脑袋疼,算了,我就不掺和了。;ekow;

灰狼王子 发表于 2012-6-19 23:35:06

能不能每抽到一个数就将此数从抽取范围内剔除,下次随机的范围相当于是少了之前已经抽到的数,不知能否实现。

沧海一粟 发表于 2012-6-20 07:59:28

原帖由 灰狼王子 于 2012-6-19 23:35 发表 http://bbs.h3wog.com/images/common/back.gif
能不能每抽到一个数就将此数从抽取范围内剔除,下次随机的范围相当于是少了之前已经抽到的数,不知能否实现。
呵呵,大家也知道要这样做,但问题是好像非常麻烦;orz;

贤知有您 发表于 2012-6-20 09:05:43

回复 9# 的帖子

方法对了.但 ERM没有集合这个概念.不能直接删除集合中的元素.
页: [1]
查看完整版本: 请教随机抽取不重复的问题

捐赠