利用栈来判断括号是否匹配,不限次数地输入,匹配则输出“True”,不匹配就输出“False”。
2. 解析- 碰上左边括号压入栈,碰上右边括号则判断:
a. 此时栈内是否有元素(注意这个要放在第一个判断,之后代码会详解)
b. 栈顶元素是否与其配对
若两个条件都满足则把左括号压出,继续判断下一个;若不满足则结束判断,返回“False”。 - 最后字符数组所有元素判断完后,再次判断栈内是否有元素。
a. 若有元素,则该元素定是未匹配的,返回“False”;
b. 若无元素,则此次括号匹配判断成功。
#include#include using namespace std; bool check(char *str){ stack st; char t; int len = strlen(str); for(int i=0;i >str){ if(check(str)) cout<<"True"< 4. 验证



