解题思路
- 先看题:注意-提示中告诉我们了不需考虑空数组的情况,也不需考虑大小字母比较的情况,全部为小写。
- 思路:示例1中三个的前两个全部为fl,这时候我第一反应是遍历他们,但是纯粹遍历,不对比字母无法解题,因此我在想怎么才能让这些元素进行对比,那必然要拿出一个标杆出来。
- 假如拿出第一个元素为标杆,从第一个字母开始比较,剩余元素和第一个元素对比相同字母,如果发现第一个字母就不相同,此时返回空字符串就行了。如果相同则循环遍历第二个字母,直到其中一个不想同了,那直接返回相同的前缀就可以了。

var longestCommonPrefix = function(strs) {
let output = ''
const firstElement = strs[0]
for(let i=0; i<firstElement.length; i++) {
const letter1 = firstElement[i]
let flag = true
for(let j=1; j<strs.length; j++) {
const word = strs[j]
const letter2 = word[i]
if(letter1 !== letter2) {
flag = false
break
}
}
if(flag) {
output = output + firstElement[i]
} else {
break
}
}
return output
};