最長公共字首

2021-10-04 15:17:10 字數 702 閱讀 9659

本來做這種題目的時候是不想用c#自己內嵌的類的方法的。但是這題如果不用的話會比較麻煩。要分析很多情況,如果是陣列稍微好處理一些,但字串就很難完全自己去寫方法了。

我用的比較重要的方法是indexof(),主要功能是找到括號裡的字串在原字串裡的位置。

然後我們可以分析一下

1.首先我們隨便讓ans為某乙個字串(例如strs[0])

2.然後我們遍歷字串組,每乙個字串用indexof這個方法去查詢ans。

3.如果每乙個字串查詢到ans的位置都是0,即每乙個字串都存在相同的ans串。這時候就說明找到答案了。

4.如果存在某個字串查不到ans(表現為查詢出來的位置是-1)或者查到的位置在某個正數上(表現為查詢出來的位置不是0)

那麼這種情況下我們就可以讓ans刪去最後乙個字母,長度減一。然後繼續進行查詢再轉到2。

如果一直查詢不到,直到ans的長度為零,輸出空「」;

**如下:

但是時間和記憶體的表現不是很好。

不知道為什麼,我簡單難度的題目完成度比一般難度的完成度差好多。

最長公共字首

描述 給k個字串,求出他們的最長公共字首 lcp 樣例 在 abcd abef 和 acef 中,lcp 為 a 在 abcdefg abcefg abcefa 中,lcp 為 abc 新知識點 vectorstrs既可以是一維的,也可以是多維的。在這裡講解三維的初始化。vector str str...

最長公共字首

編寫乙個函式來查詢字串陣列中的最長公共字首。如果不存在公共字首,返回空字串 示例 1 輸入 flower flow flight 輸出 fl 示例 2 輸入 dog racecar car 輸出 解釋 輸入不存在公共字首。說明 所有輸入只包含小寫字母a z。class solution object...

最長公共字首

編寫乙個函式來查詢字串陣列中的最長公共字首。如果不存在公共字首,返回空字串 示例 1 輸入 flower flow flight 輸出 fl 示例 2 輸入 dog racecar car 輸出 解釋 輸入不存在公共字首。說明 所有輸入只包含小寫字母a z。param strs return var...