Leetcode 20 有效的括號

2021-10-23 07:00:05 字數 1091 閱讀 4744

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

有效字串需滿足:

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

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

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

示例 1:

輸入: 「()」

輸出: true

示例 2:

輸入: 「(){}」

輸出: true

示例 3:

輸入: 「(]」

輸出: false

示例 4:

輸入: 「([)]」

輸出: false

示例 5:

輸入: 「」

輸出: true

乙個很自然的想法就是使用棧,遇到左括號就入棧,遇到右括號就判斷和棧頂元素是否匹配,匹配出棧左括號,不匹配返回false。

class

solution

elseif(

(stack.

peek()

.equals

('('

)&&c==

')')

||(stack.

peek()

.equals

('['

)&&c==

']')

||(stack.

peek()

.equals(''

))else

}return stack.

isempty()

;}}

執行時間

2ms85%

消耗記憶體

38m5.48

可以使用字元陣列替換棧來儲存資料。

class

solution':

if(c[index]=='

}return index==0;

}}

執行時間

1ms99.12%

消耗記憶體

37.5m

5.48%

很容易的一道題,基本思路都是利用後進先出的特性進行判斷,使用字元陣列通過修改陣列元素的方式比通過進棧出棧的方式要快一些。

LeetCode20有效括號

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

Leetcode 20 有效括號

leetcode 20 給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例 1 輸入 輸出 true 示例 2 輸入 輸出 true pthon 列表 如 a a b 字典 如 dict not ...

leetcode 20 有效括號

怎麼減少if語句,判斷是否是某乙個值,將值存進map中,是否在map中,若在,則是 匹配用map 給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例 1 輸入 輸出 true 示例 2 輸入 輸出...