Notice
Recent Posts
Recent Comments
Link
«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

개발 일지

14. Longest Common Prefix (가장 긴 공통 접두사) 본문

코딩 테스트/LeetCode

14. Longest Common Prefix (가장 긴 공통 접두사)

포카리tea 2023. 3. 20. 20:21

문자열 배열 중에서 가장 긴 공통 접두사 문자열을 찾는 함수를 작성하십시오.

공통 접두사가 없으면 빈 문자열을 반환합니다 "".

예시 1:

입력: strs = ["flower","flow","flight"]
출력: "fl"

예시 2:

입력: strs = ["dog","racecar","car"]
출력: ""
설명: 입력 문자열 사이에 공통 접두사가 없습니다.

 

 

조건:

  • 1 <= s.length <= 15
  • s문자 만 포함합니다 ('I', 'V', 'X', 'L', 'C', 'D', 'M').
  • strs[i] 범위에서 유효한 로마 숫자  임을 보장 합니다 .s[1, 3999]

정답:

public class Solution {
    public string LongestCommonPrefix(string[] strs) {
        string answer = "";
            
        for (int i = 0; i < strs[0].Length; i++)
        {
            bool check = false;
            string checkString = strs[0].Substring(0, strs[0].Length - i);
            
            for (int j = 0; j < strs.Length; j++)
            {
                if (strs[j].IndexOf(checkString) == 0)
                {
                    check = true;
                }
                else
                {
                    check = false;
                    break;
                }
            }

            if (check)
            {
                answer = checkString;
                return answer;
            }
        }
        return answer;
    }
}

해설: 

공통된 접두사만 찾는 것이기 때문에 공통된 문자열 위치가 모두 0이라면 해당 문자열을 반환해주도록하여 풀었습니다.