您的位置:首页 > 编程语言 > Python开发

leetcode: 14.Longest Common Prefix

2018-02-02 22:22 323 查看
题目:最长公共前缀 

Write a function to find the longest common prefix string amongst an array of strings. 

题意: 

查找字符串数组的最长公共前缀

方法一:性能49ms

class Solution(object):
def longestCommonPrefix(self, strs):
"""
:type strs: List[str]
:rtype: str
"""
if strs == []:
return ''
else:
for i in range(1, len(strs)):
l1 = len(strs[0])
l2 = len(strs[i])
if l1 > l2:
lenth = l2
else:
lenth = l1
strs[0] = strs[0][0:lenth]
for j in range(lenth):
if strs[0][j] != strs[i][j]:
strs[0] = strs[0][0:j]
break
return strs[0]

方法二:性能35ms

class Solution(object):
def longestCommonPrefix(self, strs):
"""
:type strs: List[str]
:rtype: str
"""

if strs == []:
return ''

prefix = strs[0]

for i in range(1, len(strs)):
if not prefix:
return ''
else:
while prefix not in strs[i][:len(prefix)] and len(prefix)>0:
prefix = prefix[:len(prefix)-1]
return prefix
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  leetcode python