编写一个函数来查找字符串数组中的最长公共前缀:
输入 : ["abca","abc","abca","abc","abcc"]
返回: "abc"
/**
*
* @param strs string字符串一维数组
* @return string字符串
*/
function longestCommonPrefix( strs ) {
// write code here
if(strs.length === 0 || strs === null){
return ""
}
let maxid = strs[0].length-1;
for(let i = 1;i<strs.length;i++){
var indx = -1; //下标flag
while(indx < maxid && indx < strs[i].length-1){
if(strs[0].charAt(indx +1) === strs[i].charAt(indx+1)){
indx++
}else{
break;
}
}
if(indx === -1){
return ""
}
maxid = indx;
}
return strs[0].substring(0,maxid+1);
}
module.exports = {
longestCommonPrefix : longestCommonPrefix
};
以第一个str为基准,以此遍历后面的,找到最大的前缀。
原文:https://www.cnblogs.com/taue997/p/14833833.html