Python程序检查单词是否可以在矩阵字符板上找到


假设我们有一个矩阵字符板。其中每个单元格都包含一个字符。我们还有一个名为 target 的字符串,我们必须检查是否可以通过从左到右或从上到下单向的方式在矩阵中找到 target,或者找不到。

因此,如果输入类似于

ants
spin
laps

Word = “tip”

则输出将为 True,您可以看到第三列(从上到下)形成了“tip”。

为了解决这个问题,我们将遵循以下步骤:

  • 对于 board 中的每个 i,执行以下操作
    • i := 使用 i 中存在的字符创建单词
    • 如果 i 中存在单词,则
      • 返回 True
  • i := 0
  • 当 i < board 的行数时,执行以下操作
    • j := 使用 board 中第 i 列的字符创建字符串
    • i := i + 1
    • 如果 j 中存在单词,则
      • 返回 True
  • 返回 False

示例

让我们查看以下实现以获得更好的理解:

def solve(board, word):
   for i in board:
      i = "".join(i)
      if word in i:
         return True
   i = 0
   while i < len(board):
      j = "".join([col[i] for col in board])
      i += 1
      if word in j:
         return True

   return False

board = [["a","n","t","s"],["s","p","i","n"],["l","a","p","s"]]
word = "tip"
print(solve(board, word))

输入

[["a","n","t","s"],
["s","p","i","n"],
["l","a","p","s"]],
"tip"

输出

True

更新时间: 2021年10月14日

451 次查看

开启您的 职业生涯

完成课程获得认证

开始学习
广告

© . All rights reserved.