4
PRNG用于精确生成n个设置位的数字
我目前正在编写一些代码来生成二进制数据。我特别需要生成具有给定数量的设置位的64位数字;更准确地说,该过程应取并返回一个伪随机的64位数字,其中恰好位设置为,其余设置为0。0<n<640<n<640 < n < 64nnn111 我当前的方法涉及以下内容: 生成一个伪随机数64。kkk 计算的位数,并将结果存储在。kkkbbb 如果,输出 ; 否则转到1。b=nb=nb = nkkk 这行得通,但看起来并不优雅。是否有某种PRNG算法可以比这更优雅地生成带有设置位的数字?nnn