[leetcode:python]14.Longest Common Prefix

来源:互联网 发布:windows的应用 编辑:程序博客网 时间:2024/06/05 03:53

题目:最长公共前缀
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
0 0
原创粉丝点击