leetcode解題記錄(二)

2021-10-02 14:36:03 字數 1346 閱讀 6521

問題描述:

編寫乙個函式來查詢字串陣列中的最長公共字首。如果不存在公共字首,返回空字串 「」。

示例1:

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

輸出: "fl"

示例2:

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

輸出: ""

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

說明:

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

思路:首先找出陣列中長度最短的字串,該字串一定包含或等於最長公共字首。定義乙個空字串s,從第乙個字串開始與最短字串比較,若對應字元相符,s加上該字元。否則直接返回s。**如下:

class

solution

for(

int j =

0; j < min.

size()

; j++

)//從第乙個字元開始對比,若都一樣,s加上該字元

s = s + min[j];}

return s;}}

;

問題描述:

給定乙個只包括 『(』,』)』,』』,』[』,』]』 的字串,判斷字串是否有效。

有效字串需滿足:

左括號必須用相同型別的右括號閉合。

左括號必須以正確的順序閉合。

注意空字串可被認為是有效字串。

示例1:

輸入: "(){}"

輸出: true

示例2:

輸入: "([)]"

輸出: false

思路:核心思想遍歷字串,左括號入棧,遇到右括號,則看是否與棧頂元素括號匹配,如果不匹配,則輸出false

class

solution

else'&&

' stack.

pop();

}}if(stack.

empty()

)return

true

;else

return

false;}

};

LeetCode解題記錄(5)

我將慢慢開始做leetcode上的題,並做解題記錄發布在這裡。我每題會給出一到多個解法,記錄思考過程。我演算法巨爛,是想通過這種方式稍微補補,基本功和我一樣差的小夥伴可以和我一起共勉,有大神路過可以指點一二,我感激不盡。解題的最底要求是能通過leetcode的檢測,我不會喪病的為了各種提高效率在乙個...

LeetCode解題記錄(7) 整數反轉

解題方案 給出乙個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。輸入 123 輸出 321 輸入 123 輸出 321 輸入 120 輸出 21 注意 假設我們的環境只能儲存得下 32 位的有符號整數,則其數值範圍為 231,231 1 請根據這個假設,如果反轉後整數溢位那麼就返回...

LeetCode解題記錄(22) 括號生成

解題方案 給出 n 代表生成括號的對數,請你寫出乙個函式,使其能夠生成所有可能的並且有效的括號組合。輸入 3 輸出 要求列出所有情況,且每種情況都有效,即對於每個右括號及其左邊,右括號的數目必然小於左括號。可以使用遞迴解決問題,這種屬於回溯性質的遞迴演算法,不僅需要判斷退出條件,還需要判斷分支條件進...