14. 最长公共前缀(Python)

更多精彩内容,请关注【力扣简单题】。

题目

难度:★☆☆☆☆
类型:字符串

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

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

示例

示例 1:

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

示例 2:

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

说明:

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

解答

这道题目很简单,逐一比较各个字符串,出现不同字符则跳出,详情可见注释。

class Solution:
    def longestCommonPrefix(self, strs):
        if not strs:
            return ''

        common = ''
        for i in range(min([len(s) for s in strs])):        # 遍历字符串,到最短的字符串即可
            chs = [s[i] for s in strs]      # 将所有字符串第i位置的字符都放在一个列表中用于比较
            if max(chs) == min(chs):        # 如果所有元素都相同
                common += chs[0]            # 添加当前字符到结果中
            else:
                break
        return common

如有疑问或建议,欢迎评论区留言~

你可能感兴趣的:(14. 最长公共前缀(Python))