題目:
14. 最長公共前綴
撰寫一個函式來查找字串陣列中的最長公共前綴,
如果不存在公共前綴,回傳空字串 “”,
示例 1:
輸入: [“flower”,“flow”,“flight”]
輸出: “fl”
示例 2:
輸入: [“dog”,“racecar”,“car”]
輸出: “”
解釋: 輸入不存在公共前綴,
說明:
所有輸入只包含小寫字母 a-z ,
解題思路:
1.簡單點來說,這道題可以用集合set(),集合的性質可以去掉重復的,
2.還會用到zip()函式,文章后面會有介紹~~~~~~
Python的代碼:
class Solution:
def longestCommonPrefix(self, strs: List[str]) -> str:
none = ""
if len(strs) == 0:
return ""
for a in zip(*strs):
if len(set(a)) == 1:
none += a[0]
else:
return none
return none
運行結果:

zip()函式:
zip()函式的定義:
從引數中的多個迭代器取元素組合成一個新的迭代器;
回傳:
回傳一個zip物件,其內部元素為元組;可以轉化為串列或元組;
傳入引數:
元組、串列、字典等迭代器,
zip()函式的用法:
當zip()函式中只有一個引數時,zip(iterable)從iterable中依次取一個元組,組成一個元組,
例子:
#zip()函式單個引數
list1 = [1, 2, 3, 4]
tuple1 = zip(list1)
#列印zip函式的回傳型別
print("zip()函式的回傳型別:\n", type(tuple1))
# 將zip物件轉化為串列
print("zip物件轉化為串列:\n", list(tuple1))
輸出結果:
zip()函式的回傳型別:
<class ‘zip’>
zip物件轉化為串列:
[(1,), (2,), (3,), (4,)]
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/195299.html
標籤:其他
上一篇:python爬取小視頻
下一篇:jieba分詞提取小說人名
