leetcode 14-最長公共前綴 python

編寫一個函數來查找字符串數組中的最長公共前綴。

如果不存在公共前綴,返回空字符串 ""

示例 1:

輸入: ["flower","flow","flight"]
輸出: "fl"

示例 2:

輸入: ["dog","racecar","car"]
輸出: ""
解釋: 輸入不存在公共前綴。

可以使用enumerate()函數進行對比。enumerate() 函數用於將一個可遍歷的數據對象(如列表、元組或字符串)組合爲一個索引序列,同時列出數據和數據下標,一般用在 for 循環當中

>>>seasons = ['Spring', 'Summer', 'Fall', 'Winter']

>>> list(enumerate(seasons)) [(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]

>>> list(enumerate(seasons, start=1)) # 下標從 1 開始 [(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]

PS:這裏可以設置下標,默認是從0開始

普通的 for 循環

>>>i = 0

>>> seq = ['one', 'two', 'three']

>>> for element in seq: 

             print i, seq[i] 

             i +=1

... 0 one 1 two 2 three

for 循環使用 enumerate

>>>seq = ['one', 'two', 'three']

>>> for i, element in enumerate(seq):

             print i, element

... 0 one 1 two 2 three

class Solution(object):
    def longestCommonPrefix(self, strs):
        """
        :type strs: List[str]
        :rtype: str
        """
        if len(strs) == 0:
            return ''
        s1 = min(strs)
        s2 = max(strs)
        for i,element in enumerate(s1):
            if element != s2[i]:
                return s1[:i]
        return s1

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章