题目描述:
解题思路:
/**
* @param {string[]} strs
* @return {string}
*/
var longestCommonPrefix = function (strs) {
// 首先判断数组的长度,如果为0,直接返回空,如果为1,直接返回第一个字符串
var len = strs.length;
if (len == 0) {
return '';
} else if (len == 1) {
return strs[0];
}
// 把数组按照里面字符串长度进行排序
strs = strs.sort(function (a, b) {
return a.length - b.length;
});
// 取数组里面第一个字符串作为公共前缀
var pervs = strs[0];
for (key in strs) {
for (var i = 0; i < pervs.length; i++) {
// 判断两个字符串不等于的时候,就截取到公共前缀的下标
if (pervs[i] != strs[key][i]) {
pervs = pervs.substring(0, i);
}
}
}
if (pervs.length == 0) {
return '';
} else {
return pervs;
}
};
运行结果: