代码在最后
首先回顾一下字符串
s = ["flower","flow","flight"]
print(s[0],s[1],s[2])
输出结果为 flower flow flight
s = ["flower","flow","flight"]
print(s[0][0])
此时输出结果为 f
接下来介绍本题思路,首先找出最短字符串的长度,然后在这个长度范围内逐个字符比较。下面是自己的代码:
class Solution:
def longestCommonPrefix(self, strs):
"""
:type strs: List[str]
:rtype: str
"""
result = [ ]
min = len(strs[0])
l = 0
if not strs:
return ""
if len(strs) == 1:
return strs[0]
#找到最短字符长度
for s in range(len(strs)):
l = len(strs[s]) #取每个字符的长度
if l < min:
min = l
i = 0
j = 0
while j < min:
for i in range(len(strs)-1):
if strs[i][j]!= strs[i-1][j]:
return strs[0][:j]
j += 1
return strs[0][:j]
后来看了下别人的,找最短字符长度代码段可以替换成
min = min([len(s) for s in strs])
就简单多了