14.leetcode题目讲解(Python):最长公共前缀

题目如下:

题目

解题思路是首先找到最短的那个字符串,因为最长前缀不会超过这个最短字符串的长度。然后将该字符串转换为枚举对象,一旦比对不成功,则返回当前最长的前缀,参考代码如下:

class Solution:
    def longestCommonPrefix(self, strs):
        """
        :type strs: List[str]
        :rtype: str
        """
        #判断是否为空
        if not strs:
            return ""

        # 找到最短的字符串
        shorest = min(strs, key=len)

        # 转换为枚举对象
        for i_th, letter in enumerate(shorest):

            for other in strs:

                if other[i_th] != letter:

                    return shorest[:i_th]

        return shortest

如果您有更好的解法,欢迎交流
ps:如果您有好的建议,欢迎交流 :-D,也欢迎访问我的个人博客:tundrazone.com

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容