0
点赞
收藏
分享

微信扫一扫

LeetCode 20. 有效的括号( 括号配对 )

给定一个只包括 ​​'('​​​,​​')'​​​,​​'{'​​​,​​'}'​​​,​​'['​​​,​​']'​​ 的字符串,判断字符串是否有效。

有效字符串需满足:

  1. 左括号必须用相同类型的右括号闭合。
  2. 左括号必须以正确的顺序闭合。

注意空字符串可被认为是有效字符串。

示例 1:

输入: "()"
输出: true

示例 2:

输入: "()[]{}"
输出: true

示例 3:

输入: "(]"
输出: false

示例 4:

输入: "([)]"
输出: false

示例 5:

输入: "{[]}"
输出: true
1 bool isValid(string s)
2 {
3 stack<char> Stack;
4 for(auto &c:s)
5 {
6 switch(c)
7 {
8 case '(':
9 case '[':
10 case '{':
11 Stack.push(c);
12 break;
13 case ')':
14 if(Stack.empty()||Stack.top()!='(')
15 return false;
16 else
17 Stack.pop();
18 break;
19 case ']':
20 if(Stack.empty()||Stack.top()!='[')
21 return false;
22 else
23 Stack.pop();
24 break;
25 case '}':
26 if(Stack.empty()||Stack.top()!='{')
27 return false;
28 else
29 Stack.pop();
30 break;
31 }
32 }
33 if(!Stack.empty())
34 return false;
35 else
36 return true;
37 }

 

举报

相关推荐

0 条评论