gpt4 book ai didi

lua - 你如何在 Lua 中进行 Fisher-Yates shuffle

转载 作者:行者123 更新时间:2023-12-01 13:46:35 24 4
gpt4 key购买 nike

我一直在问关于随机数的问题,我认为 Fisher-Yates shuffle 是最好的选择。我做了一张 table 't'

t = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}

现在,我什至如何洗牌这些并能够单独使用它们,例如在另一个表中生成结果 u
u = {}

最佳答案

如果您的 table 上没有孔:

math.randomseed(os.time()) -- so that the results are always different
function FYShuffle( tInput )
local tReturn = {}
for i = #tInput, 1, -1 do
local j = math.random(i)
tInput[i], tInput[j] = tInput[j], tInput[i]
table.insert(tReturn, tInput[i])
end
return tReturn
end

关于lua - 你如何在 Lua 中进行 Fisher-Yates shuffle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35572435/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com