LeetCode 14 最長公共字首

2021-09-13 19:33:30 字數 806 閱讀 7370

編寫乙個函式來查詢字串陣列中的最長公共字首。

如果不存在公共字首,返回空字串""

示例 1:

輸入: ["flower","flow","flight"]

輸出: "fl"

示例 2:

輸入: ["dog","racecar","car"]

輸出: ""

解釋: 輸入不存在公共字首。

說明:

所有輸入只包含小寫字母a-z

先判斷陣列的大小,如果為0則說明陣列為空,返回 ""。然後判斷陣列中所有的字串最短的長度min_len,然後判斷min_len如果等於0,則說明最小長度為0,也返回 ""。這時**執行到這裡,陣列中至少有乙個字串,且最短長度大於0。這時進入for迴圈,從公共子串長度為1開始,依次將各個字串的該長度的子串與第乙個字串該長度的字串比較,如果不相等則返回上乙個長度的子串。如果迴圈結束、中途沒有返回,說明在min_len長度內所有字串都完全相同,返回min_len長度的第乙個子串即可。到這裡,程式是肯定結束的。所以實際上最後的return ""; ,實際上是執行不到的。

class solution 

if(s == min_len + 1)

return strs[0].substr(0, min_len);

return "";

}};

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...