티스토리 뷰
Write a function to find the longest common prefix string amongst an array of strings.
If there is no common prefix, return an empty string""
.문자열 배열 사이에서 가장 긴 공통 접두사 문자열을 찾는 함수를 작성하십시오.
공통 접두사가없는 경우 빈 문자열 ""을 반환합니다.
I used to eval function. If you use a different language, the code below will not work
자바스크립트이 eval 이라는 특수 함수를 사용해서 풀었다. 다른언어로 푼다면 다른 알고리즘을 사용해야 할 것입니다.
/**
* @param {string[]} strs
* @return {string}
*/
var longestCommonPrefix = function(strs) {
if(strs.length == 0){return '';}
var length = strs.length, result = '';
var s = '', min = strs[0].length, j = 0;
for(let i = 0; i < length ; i++){
j = (length-1 == i) ? 0 : i+1;
s = s + '(strs['+i+'][i] == strs['+j+'][i]) && ';
if(min > strs[i].length){
min = strs[i].length;
}
}
s = s.substring(0, s.length-4);
for(let i = 0; i < min ; i++){
if(i == 0 && !eval(s)){
return "";
}
if(eval(s)){
result = result + strs[0][i];
}
}
return result;
};