例:存在这样一个数组 strs = ["abcdef", "abcd", "abcww"] ,找出这三个字符串最长的公共部分,那么答案应该是abc,如果没有公共字符串则返回""。
let strs = ["abcdef", "abcd", "abcww"];
function getMaxLength(strs) {
if (strs.length <= 0) {
return "";
} else if (strs.length == 1) {
return strs[0];
} else if (strs.length > 1) {
let minLength = strs[0].length;
let minStr = "";
let lastStr = [];
strs.forEach(item => minStr = item.length < minLength ? item : minStr)
for (let item of minStr) {
// console.log(item); // a b
for (let m = 0; m < minStr.length; m++) {
if (strs.every(i => i.charAt(m) === item)) {
lastStr.push(item);
}
}
}
return lastStr.join("");
}
}
// 结果是abc