strs은 단어가 담긴 배열입니다.
공통된 시작 단어(prefix)를 반환해주세요.
예를 들어,
strs = ['start', 'stair', 'step']
return은 'st'strs = ['start', 'wework', 'today']
return은 ''
// 👀 : 알고리즘 문제 답안.
// 🧠 : while보다 더 나은 방법이 찾은지 봐야겠다.
const getPrefix1 = strs => {
let firstText = strs[0]; // start
strs.forEach((element, index)=>{
while(strs[index].indexOf(firstText)!== 0){
firstText = firstText.substring(0, firstText.length-1);
}
});
return firstText;
}
console.log(getPrefix1(['start', 'stair', 'stap'])); // sta
console.log(getPrefix1(['start', 'wework', 'today'])) // ''
const getPrefix= (strs) => {
let prefix = '';
strs[0].split('').every((element) => {
const isLetterPrefix =
strs.filter((word) => word.indexOf(element) !== -1).length ===
strs.length;
if (isLetterPrefix) {
prefix += element;
return true;
}
});
return prefix;
};
console.log(getPrefix(['start', 'stair', 'stap'])); // sta
console.log(getPrefix(['start', 'wework', 'today'])); // ''