【leetcode 简单】第五题 最长公共前缀

2018-08-07 08:50:22来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

编写一个函数来查找字符串数组中的最长公共前缀。

如果不存在公共前缀,返回空字符串 ""

示例 1:

输入: ["flower","flow","flight"]
输出: "fl"

示例 2:

输入: ["dog","racecar","car"]
输出: ""
解释: 输入不存在公共前缀。

说明:

所有输入只包含小写字母 a-z 。

 

class Solution:
    @classmethod
    def longestCommonPrefix(self, strs):
        """
        :type strs: List[str]
        :rtype: str
        """
        if not strs:
            return ''
        new_strs=[i for i in strs if len(i) != 0]

        if new_strs:
            strs_length = len(new_strs)
            if strs_length != len(strs):
                return ''
        else:
            return ''

        if strs_length == 1:
            return strs[0]
        example=strs[0]
        strs.remove(example)

        tmp=1

        while len([i for i in strs if example[:tmp] == i[:tmp]]) == strs_length-1 and tmp <= len(example):
            tmp += 1
        tmp-=1
        return example[:tmp] if example[:tmp] else ''
class Solution:
    def longestCommonPrefix(self, strs):
        """
        :type strs: List[str]
        :rtype: str
        """
        if not strs:
            return ""
        shortest=min(strs,key=len)
        for x, y in enumerate(shortest):
            for s in strs:
                if s[x]!=y:
                    return shortest[:x]
        return shortest
            

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:bs4是非常牛逼的爬虫库!深度解析爬虫利器,轻松获得网站信息!

下一篇:python开发【第一篇】:python基础