最长公共前缀
刀刀
3/20/2025
0 字
0 分钟
题目
描述
编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 ""。
示例
示例 1:
输入:strs = ["flower","flow","flight"] 输出:"fl"
示例 2:
输入:strs = ["dog","racecar","car"] 输出:"" 解释:输入不存在公共前缀。
链接地址
答题思路
判断数组长度,如果是空,则直接返回空字符串。
拿到数组一个字符串假设是最长公共前缀,然后循环遍历数组拿到每一项的字符串,再循环遍历每一项字符串,判断对应索引的字符是否相等,如果相等则继续比较下一个字符,如果不等表明已经拿到最长字符了,截取返回即可。
解答代码
js
/**
* @param {string[]} strs
* @return {string}
*/
var longestCommonPrefix = function(strs) {
if (!strs.length) return ''
let ans = strs[0]
for(let i = 1; i < strs.length; i++) {
let j = 0;
for(; j < Math.min(ans.length, strs[i].length); j++) {
if (ans[j] !== strs[i][j]) break
}
ans = ans.slice(0, j)
}
return ans
};