LeetCode 有效的括號

2021-09-25 21:31:38 字數 873 閱讀 6966

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

有效字串需滿足:

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

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

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

示例 1:

輸入: "()"

輸出: true

示例 2:

輸入: "(){}"

輸出: true

示例 3:

輸入: "(]"

輸出: false

示例 4:

本題需使用棧來解決,即遍歷字串,遇到左括號就進行入棧,遇到右括號,就將棧頂的左括號出棧進行判斷。

有以下情況:

1.如果是左括號,進行入棧(stack.add())

2.如果是右括號:

(1)如果棧是空的,則返回false(右括號多了);

3.當字串全部遍歷完後,判斷棧是否為空(stack.isempty()):

(1)如果不為空,則返回false(左括號多了);

(2)如果為空,則返回true;

class solution ':

case ']':

char left = stack.remove(stack.size()-1); //如果不為空,棧頂元素出棧判斷匹配

if(!(

(left == '(' && c == ')') ||

(left == '') ||

(left == '[' && c == ']'))

)break;}}

}if(stack.isempty())else

}}

leetcode 有效的括號

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

leetcode 有效的括號

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

Leetcode 有效的括號

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