题目
- 描述:
给定一个字符串A和其长度n,请返回一个bool值代表它是否为一个合法的括号串(只能由括号组成)。 - 测试样例:
"( ( ) ( ) ) ",6
返回:true - 测试样例:
“( ) a ( ) ( )”,7
返回:false - 测试样例:
" ( ) ( ( ) ( )",7
返回:false
分析
代码
class Parenthesis {
public:
bool chkParenthesis(string A, int n) {
stack<char> s;
for(auto ch :A)
{
switch(ch)
{
case '(':
s.push(ch);break;
case ')':
{
if(s.empty())
return false;
else
s.pop();
}
break;
default:
return false;
}
}
return s.empty();
}
};