Python中最长公共前缀
生活随笔
收集整理的這篇文章主要介紹了
Python中最长公共前缀
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
最長公共前綴編寫一個函數(shù)來查找字符串?dāng)?shù)組中的最長公共前綴。如果不存在公共前綴,返回空字符串 “”。
示例
1:輸入: [“flower”,“flow”,“flight”]輸出: "fl"示例
2:輸入: [“dog”,“racecar”,“car”]輸出: ""解釋: 輸入不存在公共前綴。
思路1:
可循環(huán)遍歷列表中每個字符串,判斷字符串相同的位置的字母是否相等,如果相等則記錄字母并判斷下一個字母,否則就返回記錄的字符串。
思路2:
可以運用Python 中的內(nèi)置函數(shù)zip ,方便的判斷最長公共子串。
zip函數(shù)解析:
zip(iterable, iterable, ...) # zip的參數(shù)是多個迭代器, 返回值為 幾個元組作為元素的列表。 # zip 類似于矩陣操作: 例如: zip('123', '456', '789')操作過程:1 2 3 4 5 67 8 9====> 將行變成列,將列變成行,組成列表返回1 4 72 5 83 6 9====> [(1, 4, 7), (2, 5, 8), (3, 6, 9)]for i in zip('123', '456', '789'):print(i)('1', '4', '7') ('2', '5', '8') ('3', '6', '9')>>>a = [1,2,3] >>> b = [4,5,6] >>> c = [4,5,6,7,8] >>> zipped = zip(a,b) # 打包為元組的列表 [(1, 4), (2, 5), (3, 6)] >>> zip(a,c) # 元素個數(shù)與最短的列表一致 [(1, 4), (2, 5), (3, 6)] >>> zip(*zipped) # 與 zip 相反,*zipped 可理解為解壓,返回二維矩陣式 [(1, 2, 3), (4, 5, 6)]結(jié)尾給大家推薦一個非常好的學(xué)習(xí)教程,希望對你學(xué)習(xí)Python有幫助!
Python基礎(chǔ)入門教程推薦:更多Python視頻教程-關(guān)注B站:Python學(xué)習(xí)者
Python爬蟲案例教程推薦:更多Python視頻教程-關(guān)注B站:Python學(xué)習(xí)者
總結(jié)
以上是生活随笔為你收集整理的Python中最长公共前缀的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 5道python基础中while循环练习
- 下一篇: Python 空值与非空值