编写一个函数来查找字符串数组中最长的公共前缀字符串如果没有公共前缀,则返回一个空字符串“”。示例:输入:strs = ["flower","flow","flight"] 输出:"fl" 我是编码新手,尝试解决这个问题(来自 leetcode)。我的方法是搜索字符串之间最短的字符串,这是我的代码,我不知道我在哪里做错了,似乎while循环根本不起作用。如果有人可以帮助我,我将不胜感激。这是我的代码:
class Solution:
def longestCommonPrefix(self, strs: List[str]) -> str:
string = ""
len_st = []
for st in strs:
len_st.append(len(st))
m = min(len_st)
prefix = strs[len_st.index(m)]
while prefix:
for st in strs:
if prefix in st:
continue
else:
prefix = prefix.replace(prefix[-1], "")
break
return prefix
else:
return ""
输入:[“flower”,“flow”,“flight”] 输出:“flo” 预期输出:“fl”