我正在开发一个刽子手猜测算法,想要清楚地解释我所看到的东西

时间:2017-11-17 19:59:05

标签: algorithm

到目前为止,在我的算法中我已经过滤了以下内容以推断出正确的单词

  • 如果我猜一封信并且不存在,请用该字母过滤所有单词

  • 如果我猜一封信就在那里,请在该特定位置过滤掉没有该字母的任何字词

  • 过滤掉与猜测单词长度不符的单词

我想要澄清的是,如何以及如何窥视下一个字母将有助于改进我的算法,(我在另一篇文章中看到了这一点,并且不确定这将如何有助于改进算法,如果有的话)

有人建议你可以在过滤器经过我引用之后根据生成的单词库猜测字母:

  

“你或许可以预先运行。如果我们在这个级别选择”A“,那么下一级别的选项是什么?这是一个O(x ^ n)算法,显然你不能走得太远了。“

有人可以帮我解释一下这将如何实现以及如何改进我的代码?

1 个答案:

答案 0 :(得分:0)

符号序列在任何自然语言中都不是随机的。一个简单的例子是英语中“Q”几乎总是后跟“U”。因此,当您有正确的字母时,您现在可以浏览所有剩余的单词,以查看最常见的字母(或者只是出现)您已经知道的字母。使用 new 字母频率进行下一次猜测。