堆栈小应用:配对
来源:互联网 发布:ui和程序员漫画 编辑:程序博客网 时间:2024/04/30 14:35
在“配对”问题中,栈将使问题大大简化和更富逻辑性。一个简单的例子,我们来看看如何判断表达式中的小括号是否配对。如果没有栈,这问题就不会那么美妙了。
只要你脑袋里能联想到“栈”这个词,解决方案就会变得非常简单。
遍历表达式,遇到左括号则进栈,遇到有括号则将栈顶左括号弹出,遍历完后,栈应该为空。如果不能顺利执行此过程那么表达式的括号则一定不匹配。
只要你脑袋里能联想到“栈”这个词,解决方案就会变得非常简单。
遍历表达式,遇到左括号则进栈,遇到有括号则将栈顶左括号弹出,遍历完后,栈应该为空。如果不能顺利执行此过程那么表达式的括号则一定不匹配。
#include<iostream>
#include<string>
#include<stack>
using namespace std;
int main()
{
stack<char> stk;
string exp;
bool ok = true;
cin>>exp;
const int len = exp.length();
for(int i=0; i<len; i++)
{
if(exp[i] == '(')
{
stk.push(exp[i]);
}else if(exp[i] == ')')
{
if(!stk.empty())
{
stk.pop();
}
else
{
cout<<"not find /'(/' for /')/' at index of "<<i<<endl;
ok = false;
}
}
}
if(!stk.empty())
{
cout<<"not find /')/' for /'(/'"<<endl;
ok = false;
}
if(ok)
{
cout<<"ok"<<endl;
}
return 0;
}
#include<string>
#include<stack>
using namespace std;
int main()
{
stack<char> stk;
string exp;
bool ok = true;
cin>>exp;
const int len = exp.length();
for(int i=0; i<len; i++)
{
if(exp[i] == '(')
{
stk.push(exp[i]);
}else if(exp[i] == ')')
{
if(!stk.empty())
{
stk.pop();
}
else
{
cout<<"not find /'(/' for /')/' at index of "<<i<<endl;
ok = false;
}
}
}
if(!stk.empty())
{
cout<<"not find /')/' for /'(/'"<<endl;
ok = false;
}
if(ok)
{
cout<<"ok"<<endl;
}
return 0;
}
- 堆栈小应用:配对
- 堆栈小应用:配对
- Java实现堆栈小应用
- 栈的应用-----括号配对
- 堆栈溢出小程序
- c++中的小堆栈
- NYOJ-2 括号配对问题 -- 数据结构_堆栈
- 用堆栈实现括号配对检测的程序
- HDU1237(堆栈应用)
- HDU1022(堆栈应用)
- zoj2967(堆栈应用)
- 堆栈的应用
- 堆栈平衡的应用
- 堆栈应用:表达式计算
- 堆栈应用:表达式求值
- 配对
- 配对
- 括号配对(栈的应用!)
- 开源: 个人财务管理系统文档与源码下载
- TongJI Online Judge预赛(2): LOVE LETTER
- 表达式计算算法总结
- 同济OnlineJudge预赛题(一): Treenders
- 每天OnlineJudge之 “数素数”
- 堆栈小应用:配对
- 每天OnLineJudge 之 “蛇形矩阵 ”
- 每天OnLineJudge 之 “杨辉三角 ”
- 小问题,对递归重复调用的改进,一起来分享
- 在.net中使用Udp协议创建简单的聊天程序
- 以前我自己设计的“俄罗斯方块”,觉得挺有意思,今天贴出来
- 好书推荐 : 《深入理解计算机系统》(中文版,pdf格式)
- 全排列问题之递归求解
- 用.net打造可编程的表达式计算器
原创粉丝点击
热门IT博客
热门问题
老师的惩罚
人脸识别
我在镇武司摸鱼那些年
重生之率土为王
我在大康的咸鱼生活
盘龙之生命进化
天生仙种
凡人之先天五行
春回大明朝
姑娘不必设防,我是瞎子
电子温度计多少钱
温度计甩不下去
温度计破了
辐射温度计
汽车温度计
爱情温度计
温度计多少钱
一个温度计多少钱
室内温度计多少钱
温度计在哪里买
工业用温度计
棒式温度计
室内温度计价格
双金属温度计厂家
数字温度计设计
室内电子温度计
车内温度计
实验室用温度计
温度计分类
温度计碎了
实验室温度计
温度计用法
测油温度计
口腔温度计
金属温度计
大型温度计
如何使用温度计
干湿温度计对照表
家用电子温度计
怎么使用温度计
混凝土温度计
哪里有温度计卖
大温度计
温度计家用
高低温度计
自制温度计制作方法
腋下温度计要加几度
温度计39度真实照片
没有温度计怎么判断发烧
发烧温度计图片真实
怎么看温度计读数图解