這裡需要使用棧來進行操作
括號共分為三種:( )、、[ ]
若要進行括號匹配,只需要把左括號全部壓入棧中,再用右括號進行匹配( 遇到左括號壓入棧,遇到右括號去進行判斷匹配 )
棧中的元素不停的彈出,然後和右邊的括號進行匹配
例如:棧中的元素是這樣:( else ] ) 進行比對
// 判斷此時棧是否為空
if(stack.isempty())
char topchar = stack.pop();
if(c == ']' && topchar != '[')
if(c == '}' && topchar != '
if(c == ')' && topchar != '(')}}
//如果迴圈結束,棧中沒有元素則表示全部匹配成功
return stack.isempty();
}public static void main(string args) "));}}
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 輸入 輸出...