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

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

相关推荐
weixin_44401293几秒前
mysql在高并发环境下的读写分离与负载均衡
jvm·数据库·python
2401_82469766几秒前
如何通过phpMyAdmin给WordPress所有用户发送全站通知_系统表插入
jvm·数据库·python
Str_Null几秒前
Python 自动线性化 HTML/MD 表格的工程实践(一个读取表格并且提供输出的工具)
开发语言·python·html
CLX05052 分钟前
如何管理Oracle服务器的内核共享内存_shmmax与shmall计算
jvm·数据库·python
2301_812539674 分钟前
golang如何实现备忘录模式_golang备忘录模式实现方案
jvm·数据库·python
前端若水5 分钟前
开发环境准备:Python、Node.js、Docker与Git
python·docker·node.js
woxihuan1234567 分钟前
HTML怎么构建课程学习仪表盘_HTML进度环+任务列表【教程】
jvm·数据库·python
2401_884454159 分钟前
mysql数据库执行全量备份影响业务_利用xtrabackup实现无锁备份
jvm·数据库·python
AI玫瑰助手10 分钟前
Python流程控制:for循环遍历字符串列表字典
android·java·python
啦啦啦_999910 分钟前
2. PyTorch框架
人工智能·pytorch·python