本文原地址在我的博客:Leetcode 第14题 最长公共前缀
目录
Leetcode 第14题 最长公共前缀
题目地址🔗:https://leetcode.cn/problems/longest-common-prefix/
0x01 题目内容
编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 “”。
示例 1:
输入:strs = [“flower”,“flow”,“flight”]
输出:“fl”
示例 2:输入:strs = [“dog”,“racecar”,“car”]
输出:“”
解释:输入不存在公共前缀。提示:
1 <= strs.length <= 200
0 <= strs[i].length <= 200
strs[i] 仅由小写英文字母组成
0x02 算法思路
同学教的一个非常妙的解法:
0x001 算法原理
Python中字符串是可以比较大小的,比较的规则是根据ASCII表来将字符串转换成数组再按位比较,举几个例子:
abc和bac比较
有"abc"<"bac"
原因是通过查表,a、b、c的数字编号分别为97、98、99。
abc -> [97, 98, 99]
bac -> [98, 9