所以,我正在研究一个单词查找样式游戏,我现在如何生成新的字母只是不切割它。我的意思是它有效,但它似乎生成不经常使用的字母(请参阅https://en.wikipedia.org/wiki/Letter_frequency)或生成太多的1个字母。
现在我只使用一个基于随机数的mod并根据它选择,它再次起作用但不理想。
所以我有2个案例
1)一开始,它将生成25个字母的板,这些字母是随机生成的。
2)当找到一个单词时,我会从棋盘上删除这些字母并生成新的字母来替换它们
是否有一种已知的算法可以基于https://en.wikipedia.org/wiki/Letter_frequency生成最常用于单词的字母?
我可以对现有的字母做一些循环,并做很多循环,字母数。并根据它确定要生成的字母。
我更喜欢一些不那么疯狂的东西,并且可以将它用于其他语言(但此时不是必需的)
任何指针都将非常感谢!
答案 0 :(得分:1)
您可以根据频率创建一个字母池,例如来自Scrabble的98个英文字母图块。
填充网格时,将从池中删除拾取的字母并将其放入网格中。当玩家从网格中选择一个有效的单词时,请执行相反的操作:从板上删除字母并将它们放回池中。然后绘制新的字母以填补空白。
当您想要使用现有单词预填充网格以启动播放器时,您还应该从池中选择字母。
您可以为池使用简单数组。删除随机字母时,通过将最后一个元素放在拾取元素所在的位置来缩短数组。当您放回元素时,只需将它们附加到数组的末尾。