본문 바로가기
IT 이것저것

[알고리즘] LeetCode/14. Longest Common Prefix/python 솔루션

by 관성맨 2023. 2. 27.
반응형

여러 문자열들 중 앞에서부터 공통으로 같은 문자들을 output으로 나타내는 알고리즘을 짜는 문제입니다.

 

 

1. strs 단어 list 중 가장 짧은 단어를 구한 후, 그 단어의 길이(len)을 구한다.

 

2. 그 후, strs 단어 list 안에 단어들을 각각 for문으로 비교한다. (가장 짧은 단어의 길이 index만큼)

 

3. 단어들중 하나가 다른게 있을때까지 비교한다.

class Solution(object):
    def longestCommonPrefix(self, strs):
        """
        :type strs: List[str]
        :rtype: str
        """
        
        min_len = len(strs[0])
        if len(strs)==0 :
            return "";
        
        if len(strs)!=0:
            for i in range (1,len(strs)):
                min_len = min(min_len,len(strs[i]))
           # return min_len
        
        prefix = ""
        
        for i in range (0, min_len):
            for j in range (1, len(strs)):
                if strs[0][i]!=strs[j][i]:
                    return prefix
                   # break
            prefix +=strs[0][i]   
            
        return prefix
반응형

댓글