編寫乙個函式來查詢字串陣列中的最長公共字首。
如果不存在公共字首,返回空字串 ""。
示例 1:
輸入: ["flower","flow","flight"]
輸出: "fl"
示例 2:
輸入: ["dog","racecar","car"]
輸出: ""
解釋: 輸入不存在公共字首。
deflongestcommonprefix(self, strs):
ifnot strs: return
""s1 =min(strs)
s2 =max(strs)
for i,x in
enumerate(s1):
if x !=s2[i]:
return
s2[:i]
return s1
if not x
if x is none
if not x is none
if x is not none`是最好的寫法,清晰,不會出現錯誤,以後堅持使用這種寫法。
使用if not x這種寫法的前提是:必須清楚x等於none, false, 空字串"", 0, 空列表, 空字典{}, 空元組()時對你的判斷沒有影響才行
用於將乙個可遍歷的資料物件(如列表、元組或字串)組合為乙個索引序列,同時列出資料和資料下標,一般用在 for 迴圈當中。
語法:
enumerate(sequence,[start=0])
例項:
>>>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
')]
deflongestcommonprefix(self, strs):
ifnot strs: return
""ss = list(map(set, zip(*strs)))
res = ""
for i, x in
enumerate(ss):
x =list(x)
if len(x) > 1:
break
res = res +x[0]
return res
最長公共字首
描述 給k個字串,求出他們的最長公共字首 lcp 樣例 在 abcd abef 和 acef 中,lcp 為 a 在 abcdefg abcefg abcefa 中,lcp 為 abc 新知識點 vectorstrs既可以是一維的,也可以是多維的。在這裡講解三維的初始化。vector str str...
最長公共字首
編寫乙個函式來查詢字串陣列中的最長公共字首。如果不存在公共字首,返回空字串 示例 1 輸入 flower flow flight 輸出 fl 示例 2 輸入 dog racecar car 輸出 解釋 輸入不存在公共字首。說明 所有輸入只包含小寫字母a z。class solution object...
最長公共字首
編寫乙個函式來查詢字串陣列中的最長公共字首。如果不存在公共字首,返回空字串 示例 1 輸入 flower flow flight 輸出 fl 示例 2 輸入 dog racecar car 輸出 解釋 輸入不存在公共字首。說明 所有輸入只包含小寫字母a z。param strs return var...