Rand1 -> RandN
2014-10-07 06:12
218 查看
Rand1*1 => uinformly distribution of 0,1 2
Rand1*2 + Rand1 => 0,1,2,3 4
Rand1*3 + Rand2 => 0,1,2,3,4,5 6
Rand1*4 + Rand3 => 0,1,2,3,4,5,6,7 8
...
Rand1*5 + Rand4 => 0,1,2,3,4,5,6,7,8,9 10
if(n==63)
63<64.
Rand1*32 + Rand31 == Rand1*32 + Rand1*31 + Rand30....
RandN(){
if(N==1)
return ...
}
Rand1*2 + Rand1 => 0,1,2,3 4
Rand1*3 + Rand2 => 0,1,2,3,4,5 6
Rand1*4 + Rand3 => 0,1,2,3,4,5,6,7 8
...
Rand1*5 + Rand4 => 0,1,2,3,4,5,6,7,8,9 10
if(n==63)
63<64.
Rand1*32 + Rand31 == Rand1*32 + Rand1*31 + Rand30....
RandN(){
if(N==1)
return ...
}
int getRandN(int n){ int ret = 0; while(true){ ret = RandN(n); if(ret<n) break; } } int RandN(int n){ if(n<1) return -1; if(n==1) return Rand1(); n2 = n/2; return Rand1*n2 + RandN(n2-1); }
相关文章推荐
- Matlab产生随机数函数rand和randn的“state”和“seed”参数
- numpy.random.randn()与rand()的区别
- >C/C++中产生随机数(rand,srand用法)
- rand5->rand7,rand7->rand10
- rand, randn, randint, seed 等
- rand、randi和randn的区别?
- randn,randperm,rand
- rand, randn和randint函数的区别(MATLAB)
- MATLAB——rand 与 randn 'twister'、'state'、'seed'
- matlab中用rng替换rand('seed',sd)、randn('seed',sd)和rand('state',sd)的通俗解释
- 关于arange\range\numpy.random.randint()\numpy.random.randn()的总结
- Python -- numpy.random.randn()与rand()的区别
- 已知随机函数RandN(),构造随机函数RandM()
- numpy中randn()和rand()的区别
- Matlab产生随机数函数rand和randn的“state”和“seed”参数
- mtrand.RandomState.randint low >= high
- matlab中 rand和 randn的区别
- C语言<time.h>中srand(),rand()等等函数产生随机数的用法。
- matlab rand, randn, randi
- 产生随机数rand和randn中的“state”、“seed”和"twister"参数