<LeetCode天梯>Day023 最长公共前缀(切片法) | 初级算法 | Python

简介: <LeetCode天梯>Day023 最长公共前缀(切片法) | 初级算法 | Python

以下为我的天梯积分规则:


每日至少一题:一题积分+10分

若多做了一题(或多一种方法解答),则当日积分+20分(+10+10)

若做了三道以上,则从第三题开始算+20分(如:做了三道题则积分-10+10+20=40;做了四道题则积分–10+10+20+20=60)


初始分为100分

若差一天没做题,则扣积分-10分(周六、周日除外注:休息)

坚持!!!


初级算法

刷题目录

字符串


image.png

image.png

题干

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


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


示例1:


输入:strs = [“flower”,“flow”,“flight”]

输出:“fl”


示例2:


输入:strs = [“dog”,“racecar”,“car”]

输出:""

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


循环遍历

分析:


今天的题还算简单吧,但也不能忽视啊!!!

可以用切片,可以用查找,可以用集合,可以用遍历~

由于是判断前缀,只需查找到用相同的前缀,不用再查找后续的了,则返回公共集合,如果没有返回空字符“”。

大家都可以试一试~

class Solution:
    def longestCommonPrefix(self, strs: List[str]) -> str:
        # 先获取字符串的长度
        n = len(strs)
        # 从最短的字符串中查找如果没有,再进行查找
        if n == 0 or not strs:
            return ''
        idx = 1
        frist = strs[0]
        while idx < n:
            while frist not in strs[idx][:len(frist)]:
                frist = frist[:len(frist)-1]
            idx += 1
        return frist

感觉还行吧,用切片,然后再逐步的判断!

image.png


相关文章
|
3月前
|
算法
Leetcode第十四题(最长公共前缀)
这篇文章介绍了一种算法,用于在给定的字符串数组中找到最长公共前缀,通过逐字符比较每个字符串的对应位置,一旦发现不匹配立即返回当前已匹配的子串作为公共前缀。
33 0
|
3月前
|
算法
Leetcode 初级算法 --- 数组篇
Leetcode 初级算法 --- 数组篇
48 0
|
2月前
|
存储 算法 Java
leetcode算法题-有效的括号(简单)
【11月更文挑战第5天】本文介绍了 LeetCode 上“有效的括号”这道题的解法。题目要求判断一个只包含括号字符的字符串是否有效。有效字符串需满足左括号必须用相同类型的右括号闭合,并且左括号必须以正确的顺序闭合。解题思路是使用栈数据结构,遍历字符串时将左括号压入栈中,遇到右括号时检查栈顶元素是否匹配。最后根据栈是否为空来判断字符串中的括号是否有效。示例代码包括 Python 和 Java 版本。
|
3月前
|
索引 Python
Python 高级编程:深入探索字符串切片
在Python中,字符串切片功能强大,可灵活提取特定部分。本文详细介绍切片技巧:基本切片、省略起始或结束索引、使用负数索引、设定步长及反转字符串等。此外,还介绍了如何结合其他操作进行切片处理,如先转换大小写再提取子串。 来源:https://www.wodianping.com/yeyou/2024-10/48238.html
48 4
|
5月前
|
算法
测试工程师的技能升级:LeetCode算法挑战与职业成长
这篇文章通过作者亲身体验LeetCode算法题的过程,探讨了测试工程师学习算法的重要性,并强调了算法技能对于测试职业成长的必要性。
85 1
测试工程师的技能升级:LeetCode算法挑战与职业成长
|
4月前
|
数据处理 Python
Python切片魔法:一行代码实现高效数据处理
Python切片魔法:一行代码实现高效数据处理
27 0
|
5月前
|
数据处理 索引 Python
Python 中的切片
【8月更文挑战第29天】
56 4
|
5月前
|
机器学习/深度学习 数据可视化 API
Python Numpy 切片和索引(高级索引、布尔索引、花式索引)
Python Numpy 切片和索引(高级索引、布尔索引、花式索引)
59 3
|
5月前
|
算法
LeetCode第14题最长公共前缀
该文章介绍了 LeetCode 第 14 题最长公共前缀的解法,通过取一个字符串作为基准,一列一列字符比较来找出最长公共前缀,时间复杂度为 O(m * n),同时提到也可使用二分查找法,但代码复杂度会上升。
LeetCode第14题最长公共前缀
|
5月前
|
算法 Java
LeetCode经典算法题:矩阵中省份数量经典题目+三角形最大周长java多种解法详解
LeetCode经典算法题:矩阵中省份数量经典题目+三角形最大周长java多种解法详解
59 6