騰訊精選50題(18) 20 有效的括號

2021-09-22 16:31:55 字數 787 閱讀 2923

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

有效字串需滿足:

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

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

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

示例 1:

輸入: 「()」 輸出: true

示例 2:

輸入: 「(){}」 輸出: true

示例 3:

輸入: 「(]」 輸出: false

示例 4:

輸入: 「([)]」 輸出: false

示例 5:

輸入: 「」 輸出: true

先建立乙個棧

length():字串的個數

length:字串陣列的個數

push:壓棧

pop:棧的頂層元素

1利用棧的先進後出特點。

2遍歷每乙個字元,如果與棧頂元素匹配,則出棧,不匹配則進棧。

3最後為空棧說明是合法的。

class solution ':if(stack.empty() || stack.pop() != '

}return stack.empty();

}}

騰訊精選50題(1)

155.最小棧 設計乙個支援push,pop,top操作,並能在常數時間內檢索到最小元素的棧。示例 minstack minstack new minstack minstack.push 2 minstack.push 0 minstack.push 3 minstack.getmin 返回 3....

騰訊精選50題(2)

20.有效的括號 給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 1.左括號必須用相同型別的右括號閉合。2.左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例 1 輸入 輸出 true 示例 2 輸入 輸出 true 示例 3 輸入 輸出 false 示例 4 輸入 輸出 fa...

騰訊精選50題(8)

136.只出現一次的數字 給定乙個非空整數陣列,除了某個元素只出現一次以外,其餘每個元素均出現兩次。找出那個只出現了一次的元素。說明 你的演算法應該具有線性時間複雜度。你可以不使用額外空間來實現嗎?示例 1 輸入 2,2,1 輸出 1 示例 2 輸入 4,1,2,1,2 輸出 4 1.經典方法 使用...