編寫乙個函式來查詢字串陣列中的最長公共字首。
如果不存在公共字首,返回空字串""
。
示例 1:
輸入:["flower","flow","flight"]輸出:"fl"示例 2:
輸入:["dog","racecar","car"]輸出:""解釋:輸入不存在公共字首。說明:
所有輸入只包含小寫字母a-z
。
最長公共字首指的是字串陣列中所有公共最長的字首。
如果是空串的話,那麼說明字首就是「」
如果都是以「 」開頭的,那麼就是「 」
然後最長的字首不會超過最短的字串,那麼可以遍歷最短的字串的長度,依次比較。
第一步:找出長度最短的字串;
第二步:依次與長度最短的字串比較。
class solution():
def longestcommonprefix(self,strs):
if not str:
return ""
if len(strs)==1:
return strs[0]
minl=min([len(x) for x in strs])
end=0
while endfor i in range(0,len(strs)-1):
if strs[i][end]!=strs[i+1][end]:
return strs[0][:end]
end+=1
return strs[0][:end]
try1=solution()
strs=['sdj','sdsa','sd']
print(try1.longestcommonprefix(strs))
LeetCode14最長公共字首
編寫乙個函式來查詢字串陣列中最長的公共字首字串。例如 輸出 ab 比較乙個字串陣列的最長公共字首,遍歷整個字串陣列,建立乙個字串用來儲存當前最長公共字串,逐個比較,不斷更新公共字串內容。情況比較多,考慮周全,不然可能會陣列溢位。公共字串的長度和當前比較字串的長度大小的比較,避免陣列越界,還有空字串的...
LeetCode 14 最長公共字首
編寫乙個函式來查詢字串陣列中最長的公共字首字串。用第乙個字串s,比較strs的每個字串的公共字首,並記錄字首有m位,之後輸出s的前m位字元即可。但是在輸出過程中,使用了如下的賦值方式 for int i 0 i m i ans i s i 在string型別中,內部的成員是private的,所以不能...
LeetCode14 最長公共字首
題目描述 編寫乙個函式來查詢字串陣列中的最長公共字首。如果不存在公共字首,返回空字串 示例 1 輸入 flower flow flight 輸出 fl 示例 2 輸入 dog racecar car 輸出 解釋 輸入不存在公共字首。說明 所有輸入只包含小寫字母a z。如下 class solutio...