我猜测一个不那么简单的简单替换密文的关键。我评估密钥正确性的规则是假定解密中的英文单词数。
java中是否有任何可以检查字符串中英文单词数量的工具。例如, “thefoitedstateswasat” - > 4个字 “thefortedxyzstateswasathat” - > 5个单词。
我加载了单词列表并使用HashSet作为词典。由于我不知道文本中的词间空间,我无法使用简单的词典验证单词。
感谢。
答案 0 :(得分:1)
答案 1 :(得分:1)
抱歉,我是新手,暂无评论。
但是,由于检查和排列的数量非常大,代码不会很慢吗?
我猜你只需要通过使用嵌套for循环的(n-1)个字来强制执行。然后在字典中搜索每个子字符串。
答案 2 :(得分:0)
当然有更好的方法来测试密钥的准确性吗?
但这不是重点,这就是我要做的事情:
使用“quackdogsomethinggodknowswhat”
我有一个递归方法,从字符串的开头开始,我会为主题字符串开始的所有单词调用递归方法,在本例中为“qua”,并且“quack”与字符串不包含单词(“dogsomethinggodknowswhat”表示嘎嘎)。返回更大的值:1 +从所有方法调用返回的最大值OR 0 +从索引1开始的字符串的方法调用(“uackdogsomethinggodknowswhat”)。
如果您将单词列表保存在某种树中,这可能会效果最佳。
如果你需要一些伪代码,请问!