【leetcode 简单】第五题 最长公共前缀
程序员文章站
2022-03-13 14:29:41
编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 ""。 示例 1: 输入: ["flower","flow","flight"] 输出: "fl" 示例 2: 输入: ["dog","racecar","car"] 输出: "" 解释: 输入不存在公共前缀。 说明: ......
编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 ""
。
示例 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
上一篇: 35.QT-多线程