我和我的好开发者朋友进行了一次有趣的讨论。我想创建一个给定数组值的随机序列,但碎片最大,没有任何可检测的模式。对于任何唯一序列,这种所谓的最大随机性实际上总是相同的。
示例输入数组:
array(1, 2, 3, 4, 5);
标准 rand() 函数的示例结果:
array(2, 3, 1, 5, 4);
我在上面的输出中不喜欢的是像“2, 3”和“5, 4”这样的序列值,它不够碎片化。
预期结果将/可能是:
array(3, 5, 1, 4, 2);
所以我的问题;是否有任何已知的公式来计算最大随机性或更好地选择单词,最大碎片?