프로그램 개발/미분류

[LeetCode/Python]Array and String - Longest Common Prefix

(ㅇㅅㅎ) 2020. 8. 29. 13:45
728x90
반응형

문제

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 "".

 

문자열 배열 중에서 가장 긴 공통 접두사 문자열을 찾아서 반환합니다. 공통 접두사가 없는 경우는 빈 문자열("")을 반환합니다.

 

Input : ["flower", "flow", "flight"]

Output : "fl"

 

이번 문제는 효율성도 생각하지 못할 만큼 문제를 푸는데 급급했던 문제였습니다.

제 코드는 참고만 하시고 다르게 풀어보시는 것을 권유드립니다.

 

제 코드를 보시려면 더보기를 클릭하시면 됩니다.

더보기

파이썬 코드

class Solution:
    def longestCommonPrefix(self, strs: List[str]) -> str:
        answer = ""
        if len(strs) < 1:
            return answer
        strs.sort(key=lambda x:len(x))
        for i in range(len(strs[0])):
            tmp = list(set(list(zip(*strs))[i]))
            if len(tmp) == 1:
                answer += ''.join(tmp)
            else:
                return answer
        return answer
 
반응형