编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 ""
。
class Solution: def longestCommonPrefix(self, strs: List[str]) -> str: if not strs: return '' count=len(strs)#数组的长度,即其中有多少个字符串 prefix=strs[0]#第一个字符串 for i in range(1,count): prefix=self.lcp(prefix,strs[i])#用第一个字符串依次和后面的比较 if not prefix: break return prefix def lcp(self,str1,str2):#注意一下函数 index=0 length=min(len(str1),len(str2)) while index<length and str1[index]==str2[index]: index+=1 return str1[:index]#不包括index
利用python特性
class Solution: def longestCommonPrefix(self, strs: List[str]) -> str: if not strs: return '' s1=min(strs) s2=max(strs) for i,x in enumerate(s1): if x!=s2[:i]: return s2[:i] return s1