Leetcode14-Longest Common Prefix(Python3)

14. Longest Common Prefix

Write a function to find the longest common prefix string amongst an array of strings.

My Solution

class Solution(object):
    def longestCommonPrefix(self, strs):
        """
        :type strs: List[str]
        :rtype: str
        """

        # str = ''
        # for x in zip(strs[0], strs[1], strs[2]...... ):
        #     if x.count(x[0]) == len(x):
        #         str += x[0]
        #     else:
        #         break
        # return str

        if len(strs) == 0:
            return ""
        str_list, s = [], ''
        try:
            for i in range(len(strs[0])):
                for j in range(len(strs)):
                    str_list.append(strs[j][i])
                if str_list.count(str_list[0]) == len(strs):
                    s += str_list[0]
                    str_list = []
                else:
                    break
            return s
        except:
            return s

Reference (轉(zhuǎn))

class Solution:
    # @return a string
    def longestCommonPrefix(self, strs):
        if not strs:
            return ""
            
        for i, letter_group in enumerate(zip(*strs)):
            if len(set(letter_group)) > 1:
                return strs[0][:i]
        else:
            return min(strs)

My Solution 2.0

class Solution(object):
    def longestCommonPrefix(self, strs):
        """
        :type strs: List[str]
        :rtype: str
        """
        str = ''
        for x in zip(*strs):
            if x.count(x[0]) == len(x):
                str += x[0]
            else:
                break
        return str
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容