编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串""
。
示例1:
输入:["flower", "flow", "flight"]
输出:"fl"
示例2:
输入:["dog", "racecar", "car"]
输出:""
说明:所有输入只包含小写字母a-z
。
思路:比较逐个字母ASCII码值,谁先出现最小的值,则为s1,最大的为s2,然后枚举s1字符串的字母和下标,与s2进行比较,当出现不同的则截取前面的字符串。
class Solution:
def longestCommonPrefix(self, strs):
if not strs:
return ''
s1 = min(strs)
s2 = max(strs)
for i, s in enumerate(s1):
if s != s2[i]:
return s1[:i]
return s1