原文:rand5生成rand3和rand7

问题:给定一个函数rand ,该函数可以随机生成 的整数,且生成概率一样。现要求使用该函数构造函数rand ,使函数rand 可以随机等概率的生成 的整数。 思路:先扩区间,再取模,即构造大的整数区间,限制整数区间,最后映射整数区间。 rand int Rand return rand int Rand int ret while 构造出等概率的范围 ret Rand Rand 舍弃 if ret ...

2021-03-02 17:29 0 587 推荐指数:

查看详情

【算法题】rand5()产生rand7()

前两天,睡觉前,偶尔翻起算法导论,看到随机函数这一块内容,里面有一个练习题. 5.1-2 描述random(a,b)过程的一种实现,它只调用random(0,1).作为a和b的函数,你的程序的期望运 ...

Sat Jul 28 22:41:00 CST 2012 2 8913
使用函数rand5()来实现函数rand7()

题目: 给定一个函数rand5(),该函数可以随机生成1-5的整数,且生成概率一样。现要求使用该函数构造函数rand7(),使函数rand7()可以随机等概率的生成1-7的整数。 思路: 很多人的第一反应是利用rand5() + rand()%3来实现rand7()函数 ...

Mon Jul 15 19:26:00 CST 2019 0 1392
由随机数rand5实现随机数rand7

rand5表示生成随机数1,2,3,4,5 rand7表示生成随机数1,2,3,4,5,6,7 要通过rand5构造rand7现在可能没有什么思路,我们先试着用rand7生成rand5 rand7生成rand5很简单,把6和7排除掉就是rand5了,也就是当随机到大于 ...

Thu Aug 01 06:50:00 CST 2019 0 531
DB2生成UUID, CONCAT (HEX (RAND ()), HEX (RAND ())) 排坑

DB2中没有提供生成UUID的方法,一般我们常用的是CONCAT (HEX (RAND ()), HEX (RAND ())) 来生成UUID,但是大量生成的时候会产生重复数据,导致我们的唯一索引报错。 本次采用java的自定义函数方法来生成UUID,即用java代码的生成UUID方法来生成 ...

Mon Jul 06 23:35:00 CST 2020 0 511
利用rand7()构造rand10()

题意 已知有个rand7()的函数,返回1到7随机自然数,让利用这个rand7()构造rand10() 随机1~10 参考代码 解析 要保证rand10()均匀生成1~10的随机数,可以构造一个0~10n的随机数区间,这样通过rand10n()%10+1就是所求。 现在目标 ...

Sun Sep 14 06:46:00 CST 2014 0 3251
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM