?博文作者 wangzirui32 💖 喜欢的可以 点赞 收藏 关注哦~~ 👉本文首发于CSDN,未经许可禁止转载
1. 题目描述
来源:力扣(LeetCode) 链接:https://leetcode.cn/problems/longest-common-prefix/ 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
2. 解题思路
我们找到列表中最小长度的字符串,进行循环,然后每一次循环检测是否与其他字符串前缀相同,如相同结果存入result 中,循环结束后返回最大前缀。
3. 代码实现
Code:
class Solution:
def longestCommonPrefix(self, strs) -> str:
min_length_str = min(strs, key=lambda s: len(s))
result = ""
for i in range(1, len(min_length_str)+1):
swith = min_length_str[:i]
if all([k.startswith(swith) for k in strs]):
result = swith
return result
我来解析其中比较重要的代码:
min(strs, key=lambda s: len(s)) 以字符串的长度为参照,选出最小字符串swith = min_length_str[:i] 获取索引i 之前的前缀all([k.startswith(swith) for k in strs]) 检测其他字符串前缀是否都相同。
4. 最终结果
🎉🎉🎉 好了,今天的课程就到这里,我是wangzirui32,喜欢的可以点个收藏和关注,我们下次再见!
|