bool CheckBlancedParentheses(char* ch)
{
if(NULL == ch)
return false;
stack <char> s;
char* tmp = ch;
while(*tmp)
{
if( '(' == *tmp || '[' == *tmp || '{' == *tmp)
s.push(*tmp);
else if( ')' == *tmp)
{
if(s.empty())
return false;
else if('(' != s.top())
return false;
else s.pop();
}
else if( ']' == *tmp)
{
if(s.empty())
return false;
else if('[' != s.top())
return false;
else s.pop();
}
else if( '}' == *tmp)
{
if(s.empty())
return false;
else if('{' != s.top())
return false;
else s.pop();
}
tmp++;
}
if(s.empty())
return true;
return false;
}
用栈判断是否是平衡括号 Check for balanced parentheses using stack
最新推荐文章于 2020-07-10 17:55:44 发布