题目
- 描述:
给定一个字符串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();
}
};
该博客主要介绍了一个C++代码实现,用于判断给定的字符串是否为合法的括号串。通过使用栈数据结构,遍历字符串并根据括号类型进行压栈或匹配,最后检查栈是否为空来确定字符串是否合法。不包含非法字符或未闭合的括号将返回true,否则返回false。
1342

被折叠的 条评论
为什么被折叠?



