LeetCode-python 14.最长公共前缀

题目链接

难度:简单       类型: 数组,字符串


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

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

示例1

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

示例2

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

解题思路


选择数组中的任意一个字符串作为模板
纵向比较,在第i次比较时,对比数组中剩余的每一个字符串的第i个字符与模板的第i个字符是否相同
若有一个不相同或者比较完了再或者剩余字符串长度不够了就返回第i位之前的子串

代码实现

class Solution(object):
    def longestCommonPrefix(self, strs):
        """
        :type strs: List[str]
        :rtype: str
        """
        if not strs:
            return ''
        sample = strs[0]
        for i in range(len(sample)):
            for s in strs[1:]:
                if i<len(s) :
                    if s[i]!=sample[i]:
                        return sample[:i]
                else:
                    return s[:i]
        return sample

本文链接://www.greatytc.com/p/31fd8235df50

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 需求 编写一个函数来查找字符串数组中的最长公共前缀。 说明所有输入只包含小写字母 a-z 。如果不存在公共前缀,返...
    惑也阅读 229评论 0 1
  • 官网 中文版本 好的网站 Content-type: text/htmlBASH Section: User ...
    不排版阅读 4,526评论 0 5
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,279评论 0 4
  • 在C语言中,五种基本数据类型存储空间长度的排列顺序是: A)char B)char=int<=float C)ch...
    夏天再来阅读 3,435评论 0 2
  • 第3章 基本概念 3.1 语法 3.2 关键字和保留字 3.3 变量 3.4 数据类型 5种简单数据类型:Unde...
    RickCole阅读 5,266评论 0 21