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:]:从第二个字符串开始遍历。

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

相关推荐
敏编程9 分钟前
一天一个Python库:tomlkit - 轻松解析和操作TOML配置
python
老鼠只爱大米11 分钟前
LeetCode经典算法面试题 #347:前 K 个高频元素(最小堆、桶排序、快速选择等多种实现方案详解)
算法·leetcode·堆排序·java面试题·桶排序·快速选择·topk
2401_8796938715 分钟前
使用Python进行图像识别:CNN卷积神经网络实战
jvm·数据库·python
yunyun3212321 分钟前
机器学习模型部署:将模型转化为Web API
jvm·数据库·python
猹叉叉(学习版)35 分钟前
【系统分析师_知识点整理】 1.计算机系统
笔记·软考·系统分析师
liuyao_xianhui41 分钟前
优选算法_分治_快速排序_归并排序_C++
开发语言·数据结构·c++·算法·leetcode·排序算法·动态规划
团子和二花1 小时前
openclaw平替之nanobot源码解析(七):Gateway与多渠道集成
python·gateway·agent·智能体·openclaw·nanobot
未知鱼1 小时前
Python安全开发之简易目录扫描器(含详细注释)
开发语言·python·安全
Be1k01 小时前
推荐一款语雀知识库批量导出工具
python·gui·工具·语雀·批量导出·原创
CryptoPP1 小时前
开发者指南:构建实时期货黄金数据监控系统
大数据·数据结构·笔记·金融·区块链