LeetCode-20-有效的括号
题目
给定一个只包括
'('
,')'
,'{'
,'}'
,'['
,']'
的字符串 s
,判断字符串是否有效。
有效字符串需满足:
- 左括号必须用相同类型的右括号闭合。
- 左括号必须以正确的顺序闭合。
- 每个右括号都有一个对应的相同类型的左括号。
示例 1:
1 |
|
示例 2:
1 |
|
示例 3:
1 |
|
提示:
1 <= s.length <= 104
s
仅由括号'()[]{}'
组成
题解
这题其实很简单了,用栈的思想就很好解决了,具体的方法为:
- 先判断
s
的长度,如果是奇数可以直接return false
; - 然后遍历
s
,遇到右括号我们入栈对应的左括号; - 遇到左括号我们直接出栈,如果栈空出不了,或者出栈元素和当前左括号不一致,
return false
- 最后返回栈是否是空的,空的说明字符串有效
1 |
|
LeetCode-20-有效的括号
https://excelius.xyz/leetcode-20-有效的括号/