LeetCode|Day19|14. 最长公共前缀|Python刷题笔记

LeetCode|Day19|14. 最长公共前缀|Python刷题笔记

🗓️ 本文属于【LeetCode 简单题百日计划】系列

👉 点击查看系列总目录 >>


📌 题目简介

题号:14. 最长公共前缀
难度:简单
题目链接:点击跳转


🧾 题目描述(简要)

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

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

示例:

复制代码
输入:strs = ["flower","flow","flight"]
输出:"fl"

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

💡 解法:横向扫描法

python 复制代码
class Solution:
    def longestCommonPrefix(self, strs: list[str]) -> str:
        if not strs:
            return ""
        prefix = strs[0]
        for s in strs[1:]:
            while not s.startswith(prefix):
                prefix = prefix[:-1]
                if not prefix:
                    return ""
        return prefix

🧠 我的理解

  • 先假设第一个字符串是最长公共前缀;
  • 然后遍历后续字符串,不断缩短 prefix 直到满足 s.startswith(prefix)
  • 如果中间被削减到空,说明没有公共前缀。

📌 基础语法复习:

  • s.startswith(prefix):判断字符串是否以某前缀开头;
  • prefix[:-1]:去掉最后一个字符;
  • for s in strs[1:]:从第二个字符串开始遍历。

📌 返回总目录:点我回目录

相关推荐
Felix_M.6 分钟前
CLAM复现问题记录
python
猫头虎18 分钟前
用 Python 写你的第一个爬虫:小白也能轻松搞定数据抓取(超详细包含最新所有Python爬虫库的教程)
爬虫·python·opencv·scrapy·beautifulsoup·numpy·scipy
三年呀25 分钟前
**超融合架构中的发散创新:探索现代编程语言的挑战与机遇**一、引言随着数字化时代的快速发展,超融合架构已成为IT领域的一种重要趋势
python·架构
Q_Q196328847526 分钟前
python基于Hadoop的超市数据分析系统
开发语言·hadoop·spring boot·python·django·flask·node.js
Always_away33 分钟前
数学分析| 极限论| 1.数列极限常用方法总结
笔记·学习·考研·数学
MediaTea1 小时前
Python 第三方库:Requests(HTTP 客户端)
开发语言·网络·python·网络协议·http
AI大法师1 小时前
Python:PyQt5 全栈开发教程,构建跨平台桌面应用
python·pyqt
华科云商xiao徐1 小时前
分布式爬虫双核引擎:Java大脑+Python触手的完美协同
java·爬虫·python
霜绛1 小时前
Unity:GUI笔记(一)——文本、按钮、多选框和单选框、输入框和拖动条、图片绘制和框绘制
笔记·学习·unity·游戏引擎
计算机毕业设计木哥2 小时前
计算机毕设大数据选题推荐 基于spark+Hadoop+python的贵州茅台股票数据分析系统【源码+文档+调试】
大数据·hadoop·python·计算机网络·spark·课程设计