c语言版
bool cheak(char* str)
{
Stack stack;
stack_init(stack);
for(int i = 0; str[i] != '\0';i++)
{
if(str[i] == '(')
stack_push(stack,'(');
else if(str[i] == ')')
{
if(stack_empty(stack)) return false; //当栈为空时,字符串为')'时是永远不匹配的,相当于以‘)’开头,返回false
stack_pop(stack);
}
}
bool res = stack_empty(stack);
stack_destory(stack);
return res;
}
网友评论