Leetcode - 가장 긴 공통 접두사

문제 설명



문자열 배열 중에서 가장 긴 공통 접두사 문자열을 찾는 함수를 작성하십시오.
공통 접두사가 없으면 빈 문자열 ""을 반환합니다.

연산


  • 배열이 비어 있으면 빈 문자열의 접두사를 반환합니다.
    배열에 1개의 단어가 있으면 전체 단어를 반환합니다.
  • Array 의 첫 번째 단어의 문자를 통해 반복하고 비교합니다.
    다른 세계에 대한 동일한 색인 문자에 대한 해당 문자.

  • 예시

       let strs = ["flower","flow","flight"]
       So What above line meaning is -
       str[0][0] === str[1][0],
       str[0][1] === str[1][1] and so on....  
    


  • 문자가 일치하는 경우 다음 문자 집합으로 계속됩니다.
    그렇지 않으면 접두사를 반환합니다
  • .
  • 문자가 더 이상 일치하지 않으면 첫 번째 단어
    가장 긴 공통 접두사가 있는 위치를 표시하므로
    빈 문자열에 추가합니다.

  • 먼저 알고리즘을 사용하여 문제 해결 시도

    가장 긴 공통 접두사에 대한 Javascript 함수




    /**
     * @param {string[]} strs
     * @return {string}
     */
    var longestCommonPrefix = function(strs) {
    let result = "";
    //array is empty, return a prefix of empty string
    if (strs.length === 0) {return ""}
    
    //array has 1 word, return the whole word
    if (strs.length === 1) {return strs[0]}
    
    //Iterate through letter of first word of Array
    for(let i=0 ; i<strs[0].length ; i++){
    //compare those letters to same Indexed letter to other world.
     for(let j=1 ; j< strs.length ; j++){
     if(strs[0][i] == strs[j][i]){
         continue;
     }else{
         return result
     }
     }
    
    /*If the letter is no longer matching then the first word 
      will mark where the longest common prefix is, so 
      we add to our empty string*/
    result += strs[0][i];
    }
    return result;    
    };
    
    


    테스트 케이스


    Input: strs = ["flower","flow","flight"]
    Output: "fl"
    Input: strs = ["dog","racecar","car"]
    Output: ""
    Input: strs = ["",""]
    Output: ""

    좋은 웹페이지 즐겨찾기