您的位置:首页 > 其它

如何设计一个高效算法从N个正整数中,随机选取n个不同的随机数 n<=N

2015-03-09 09:11 369 查看
1、若N不算大,且N>>n。可以采用数组存储1-N个数,然后运用随机函数产生一个随机数m,以m为下标的数组索引值即为所找,同时将最后一个元素赋值到该索引所在地址,然后将数组大小减少1后,再次调用随机函数产生随机数,然后又将其元素与倒数第二个交换。依次类推。

2、若N较大,则方法1存在较大的不足就是需要耗费大量的存储空间。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐