继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

数据结构探险-栈篇:括号匹配问题--一个栈实现

kming
关注TA
已关注
手记 2
粉丝 8
获赞 38
include <iostream>
include "stack.h"

using namespace std;

int main(int argc, char argv[])
{
char p[] = "[[]()[]]]";
MyStack<char> sch(10);
char
temp = p;
char ch1 = 0,ch2 = 0;
while(temp)
{
ch1 =
temp;
if(!sch.stackEmpty())
{
sch.pop(ch2);//取出栈顶元素
if((ch2 == '(' && ch1 == ')') (ch2 == '[' && ch1 == ']')
ch2 == '{' && ch1 == '}')
{//如果取出的括号,与下一个括号匹配,则丢弃取出的括号
temp++;
continue;
}
sch.push(ch2);//如果不匹配,则放回栈里
}
sch.push(ch1);
temp++;
}
if(sch.stackEmpty())
cout << "括号匹配" << endl;
else
cout << "括号不匹配" << endl;

return 0;

}

打开App,阅读手记
1人推荐
发表评论
随时随地看视频慕课网APP

热门评论

这里所有的temp,除了带temp++的,其他都是*temp,不知道为什么上传上去都不带*,希望大家注意一下

查看全部评论