在编写几个游戏时,发现都需要产生随机数列,有的是连续的,有的是打乱原有顺序,因其频繁使用,故写成头文件,以便初学者使用。
我写了三个版本的产生0~n-1的函数,文件如下:
从代码看,version1和version2效率差不多,version3好一点,
我经过试验,从运行1000 000 000次的结果看,version3比version2的略好,version3效率是前者的1.5倍
稍加修改即可成为打乱randorder[]数组的函数
本文介绍了一种在游戏开发中常见的需求——生成指定范围内的随机数列,并提供了三种不同的实现方式。这些方法能够确保生成的数列在0到n-1之间且不重复,适用于需要随机顺序或打乱序列的应用场景。
在编写几个游戏时,发现都需要产生随机数列,有的是连续的,有的是打乱原有顺序,因其频繁使用,故写成头文件,以便初学者使用。
我写了三个版本的产生0~n-1的函数,文件如下:
从代码看,version1和version2效率差不多,version3好一点,
我经过试验,从运行1000 000 000次的结果看,version3比version2的略好,version3效率是前者的1.5倍
稍加修改即可成为打乱randorder[]数组的函数
1万+

被折叠的 条评论
为什么被折叠?