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

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

示例 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
            

 

相关文章:

  • 2021-09-08
  • 2021-05-14
  • 2021-10-27
  • 2021-06-21
  • 2021-06-30
  • 2021-04-02
  • 2021-06-01
猜你喜欢
  • 2021-04-22
  • 2022-01-27
  • 2021-06-26
  • 2021-06-05
  • 2021-08-31
  • 2022-02-04
相关资源
相似解决方案