Write a function to find the longest common prefix string amongst an array of strings.
If there is no common prefix, return an empty string ""
.
Example 1:
Input: ["flower","flow","flight"] Output: "fl"
Example 2:
Input: ["dog","racecar","car"] Output: "" Explanation: There is no common prefix among the input strings.
class Solution(object):
def longestCommonPrefix(self, strs):
"""
:type strs: List[str]
:rtype: str
"""
com_pre = "" #保存最长前缀
if len(strs)==0: #空列表直接返回
return com_pre
strs = sorted(strs) #保证第一个字符串是最短的,否则会出现越界
for i in range(len(strs[0])): #第一个循环是第一个单词中的字母
letter = strs[0][i]
num = 0 #表示有几个字符串的字母是相同的
for j in range(len(strs)):
if strs[j][i]==letter:
num += 1
if num == len(strs): #代表所有字符串都有相同的字母
com_pre += letter
else:
return com_pre
return com_pre