字符串数组中的最长公共前缀

leetcode:编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""

点击查看代码
from typing import List


class Solution:
    def longestCommonPrefix(self, strs: List[str]) -> str:
        if len(strs) == 0:
            return ""
        s1 = min(strs)
        s2 = max(strs)
        for i,x in enumerate(s1):
            if x != s2[i]:
                return s2[:i]
        return s1

思路:如果为空的list,返回""
找到strs中最大值和最小值,ascll编码有大有小,aab<aba<abc , a<ab<c,这样如果最大值和最小值有相同的,个数为n,则中间的相同个数必定大于等于n,这样再判断是在第几个下标时不相等,再去切片

posted @ 2021-09-24 22:28  xifang  阅读(203)  评论(0)    收藏  举报