求助大佬关于python最长前缀的问题
1.代码运行后为空2.代码的意思不是很懂:
1.stillmatch的作用是什么?还有True和Flase
2.最后return strs[:start -1],为什么要减1呢?
class Solution:
def longestCommonPrefix(self, strs: list) -> str:
start = 1
stillmatch = True
while start <= len(strs):
#将字符串数组第一个字符串之后的字符串分别与第一个字符比较
for j in range(1, len(strs)):
if strs[:start] != strs[:start]:
stillmatch = False
break
#一旦发现不匹配则可以退出循环
if not stillmatch:
break
#更新比较的字符串前缀的位置
start += 1
return strs[:start-1]
其他方法麻烦大佬写个注释,谢谢!!{:10_254:} 最好是其他办法{:10_254:} 这个代码运行也是为空{:10_266:}
class Solution(object):
def longestCommonPrefix(self, strs):
"""
:type strs: List
:rtype: str
"""
if not strs:
return ""
strs.sort()
res = ""
for x, y in zip(strs, strs[-1]):
if x == y:
res += x
else:
break
return res
页:
[1]