更多精彩內(nèi)容,請(qǐng)關(guān)注【力扣簡(jiǎn)單題】。
題目
難度:★☆☆☆☆
類(lèi)型:字符串
編寫(xiě)一個(gè)函數(shù)來(lái)查找字符串?dāng)?shù)組中的最長(zhǎng)公共前綴。
如果不存在公共前綴,返回空字符串 ""。
示例
示例 1:
輸入: ["flower","flow","flight"]
輸出: "fl"
示例 2:
輸入: ["dog","racecar","car"]
輸出: ""
解釋: 輸入不存在公共前綴。
說(shuō)明:
所有輸入只包含小寫(xiě)字母 a-z 。
解答
這道題目很簡(jiǎn)單,逐一比較各個(gè)字符串,出現(xiàn)不同字符則跳出,詳情可見(jiàn)注釋。
class Solution:
def longestCommonPrefix(self, strs):
if not strs:
return ''
common = ''
for i in range(min([len(s) for s in strs])): # 遍歷字符串,到最短的字符串即可
chs = [s[i] for s in strs] # 將所有字符串第i位置的字符都放在一個(gè)列表中用于比較
if max(chs) == min(chs): # 如果所有元素都相同
common += chs[0] # 添加當(dāng)前字符到結(jié)果中
else:
break
return common
如有疑問(wèn)或建議,歡迎評(píng)論區(qū)留言~