减小以下代码的复杂度from typing import Listclass Solution param words a list of string return a boolean def valid_word_squareself words Liststr - bool # Write your code here
可以减小代码的复杂度的一种方法是使用zip函数来处理字符串列表。zip函数可以将多个列表按索引进行配对,然后返回一个元组的列表。
以下是修改后的代码:
from typing import List
class Solution:
def valid_word_square(self, words: List[str]) -> bool:
num = len(words)
for i in range(num):
word = words[i]
col = [row[i] for row in words if i < len(row)]
if list(word) != col:
return False
return True
修改后的代码使用了for循环来遍历每个单词,然后使用列表推导式和zip函数来生成每一列的字符列表。最后,如果任何一列与对应的单词不相等,则返回False;否则,返回True表示所有列和单词都匹配
原文地址: https://www.cveoy.top/t/topic/iMxh 著作权归作者所有。请勿转载和采集!