在 LeetCode 中,"最长公共前缀" 是一个经典的编程问题。这个问题旨在找出给定字符串数组中的最长公共前缀。
问题描述
假设你有若干个字符串,你需要找出其中最长的公共前缀。
示例:
输入:["flower","flow","flight"]
输出:"fl"
解决方法
解决这个问题的方法有很多,以下是一些常见的思路:
- 横向比较法:从第一个字符串开始,逐个字符与其他字符串进行比较,直到找到一个不匹配的字符。
- 纵向比较法:从第一个字符开始,逐个字符比较所有字符串,直到找到一个不同的字符。
代码示例
以下是一个使用横向比较法的 Python 代码示例:
def longestCommonPrefix(strs):
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
扩展阅读
如果你对这个问题感兴趣,可以进一步阅读以下内容: