編寫乙個函式來查詢字串陣列中的最長公共字首。
如果不存在公共字首,返回空字串 「」。
示例 1:
輸入: [「flower」,「flow」,「flight」]
輸出: 「fl」
示例 2:
輸入: [「dog」,「racecar」,「car」]
輸出: 「」
解釋: 輸入不存在公共字首。
說明:所有輸入只包含小寫字母 a-z 。
公共字首:在每乙個字串裡面,且其長度不會超過每個比較物件的最小長度
1、方法過載與方法重寫(方法覆蓋)
方法過載:發生在同乙個類內,方法名相同,引數的個數或順序或型別不同,返回值型別可以相同也可以不同
方法重寫/方法覆蓋:在子類中對父類內的方法進行重寫,方法名、引數列表和返回型別必須相同
2、strs=
橫向比較:通過s1與s2比較得到公共字首perx,再將perx與s3比較得到公共字首perx,以此類推,最終得到最長公共字首。
若perx為空則不需要繼續比較了,結果一定為空
class
solution
return prex;
}public string longestcommonprefix
(string s1,string s2)
return s1.
substring(0
,index);}
}
縱向比較:從下標0開始每一列比較全部的s1,s2,…,sn,若有乙個不相等則停止比較,下標0到此時下標處的字串為最長公共字首
class
solution
if(ibreak;}
return strs[0]
.substring(0
,index);}
}
3、最長公共字首的長度肯定不會超過s1,s2,…,sn中的最短長度
找最長公共字首說白了就是找下標,0-下標處的字串即為要找的最長公共字首
4、charat: string類 返回指定索引處的字元
substring: string類 返回字串的子字串,包括開始處,不包括結束處
math.min
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...