题目:
Write a function to find the longest common prefix string amongst an array of strings.
找到一个数组中最长的公共前缀。
思路:
1.先找到其中最短的字符串
2.然后逐一与这个最短的进行比较
将字符串数组根据长度排序的方法:
str.sort(key=lambda x:len(x))
或者直接:str.sort(key=len)
enumerate 函数用于遍历序列(list,tuple)中的元素以及它们的下标:
>>> for i,j in enumerate(('a','b','c')):
print i,j
0 a
1 b
2 c
最后的代码:
def longestCommonPrefix(self, strs):
#typr strs:list[str]
#rtypr:str
if not strs:
return ' '
shortest =min(strs,key=len)
fori,ch in enumerate(shortest):
for other in strs:
if other[i] != ch:
return shortest[:i]
return shortest