在Python中检查单词是否可以在字符矩阵板中找到
假设我们有一个字符矩阵板。其中每个单元格都持有一个字符。 我们还有一个名为target的字符串,我们必须检查是否可以通过向左到右,或向上到下的单向方式在矩阵中找到目标。
所以,如果输入如下:
a | n | t | s |
---|---|---|---|
s | p | i | n |
l | a | p | s |
词 = “tip”
然后输出将为True,您可以看到第三列(从上到下)正在形成“tip”。
要解决此问题,我们将遵循以下步骤:
- 对于每个 i 在board中,执行以下操作:
- i :=从i中存在的字符中制作单词
- 如果i存在单词,则
- return True
- i := 0
- while i < board的行计数,执行以下操作:
- j :=从board中的第i列字符制作字符串
- i := i + 1
- 如果单词在j中,则
- return True
- return 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