微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

构建递归算法来检查二维单词数组

如何解决构建递归算法来检查二维单词数组

我正在尝试使用字母而不是数字来构建数独游戏。将出现如下框:3 by 3 box

并且用户将尝试找到字母的正确排列,使得所有水平和所有垂直字母形成单词。一种游戏模式是用户可以使用字母子集来填写方框。对于这个游戏,我使用了一个 txt 文件中的特殊单词列表,所以我不能使用标准词典库。 以下是正确填写的拼图示例:
completed puzzle

对于为拼字游戏玩家制作的这个版本的数独,oxo 是一个有效的词。无论如何,我将如何构建一个算法来检查水平和所有垂直字母是否构成单词?

解决方法

问题是关于检查 6 个字符串是否都是字典中的有效单词。

用于此的伪代码 Java:

  String[] boardWords = getWordsFromBoard(); // Should be a 6 element array.
  Set<String> dictionary = loadDictionary(); // Read all words from dictionary file into a Set.
  for (String word : boardWords) {
    if (!dictionary.contains(word)) return false;
  }
  return true;

您在问题中的评论似乎表明您想知道如何根据字典检查 6 个字符串并询问您是否需要扫描字典 6 次。正如你在上面的代码中看到的,你可以将字典的内容加载到一个集合中,然后循环遍历单词并检查它们是否出现在集合中。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。