14. 最长公共前缀-----leetcode刷题(python解题)

栏目: Python · 发布时间: 6年前

内容简介:[TOC]如果不存在公共前缀,返回空字符串 ""。解释: 输入不存在公共前缀。

[TOC]

题目

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

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

示例 1:

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

示例 2:

输入: ["dog","racecar","car"]
输出: ""

解释: 输入不存在公共前缀。

说明:

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

来源:力扣(LeetCode)

链接: https://leetcode-cn.com/probl...

著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

解答

先找到最短字符串的长度,这样能减少循环次数然后在进行循环找到公共前缀

class Solution(object):
    def longestCommonPrefix(self, strs):
        """
        :type strs: List[str]
        :rtype: str
        """
        a= 0
        num = []
        len_strs = len(strs)
        for i in strs:
            num.append(len(i))
        if num ==[]:
            return ""
        min_num = min(num)
        for i in range(min_num):
            for j in range(len_strs-1):
                
                if strs[j][i] != strs[j+1][i]:
                    break
            else:
                a +=1
                continue
            break
        return strs[0][:a]

执行效果

  • 执行结果:通过
  • 执行用时 :28 ms, 在所有 Python 提交中击败了79.27%的用户
  • 内存消耗 :12 MB, 在所有 Python 提交中击败了16.85%的用户

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

编程人生

编程人生

Peter Seibel / 图灵俱乐部 / 人民邮电出版社 / 2011-1-1 / 79.00元

界顶尖的程序员是怎么走上编程道路的? 他们的编程工作创造和改变了人类历史,在这一过程中都有哪些经验和教训? 他们对计算机软件行业的过去、现在和未来有什么独到的看法和见解? 他们对培养、发现、选拔、面试优秀的程序员有什么建议? 放下手头的工作,听听这些软件先驱们的故事和建议,眼界可以更开阔,思路可以更清晰,方向可以更明确,人生可以更精彩。 作者Peter Seibel采......一起来看看 《编程人生》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具