編寫乙個函式來查詢字串陣列中的最長公共字首。
如果不存在公共字首,返回空字串 ""。
示例 1:
輸入: ["flower","flow","flight"]
輸出: "fl"
示例 2:
輸入: ["dog","racecar","car"]
輸出: ""
解釋: 輸入不存在公共字首。
見過這個題,所以就照搬了,結果發現不對,因為find函式的使用不正確
string containprefix
(vector
& s)
}return prefix;
}
只要在字串中存在prefix,find就能找出,所以可能找到的不是字首,而是後面的子串,比如
"c","acc","ccc"
"absdfs","abc","aaaab"
按說是可以改,查詢的時候從0開始,查詢prefix.size()個元素,find定義的過載(第三個)也能實現這個功能,就是執行不了,不知道什麼錯誤
可能是只支援c字串,不支援string,find還是有很多限制的
size_type find
( value_type _ch,
size_type _off =0)
const
;size_type find
(const value_type* ptr,
size_type _off =0)
const
;size_type find
(const value_type* ptr,
size_type _off,
size_type count)
const
;size_type find
(const basic_string
& str,
size_type _off =0)
const
;
這樣就對了
class solution
}return ans;}}
;
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...