C++:泛型编程stack(括号匹配)
来源:互联网 发布:股票盯盘系统公式 源码 编辑:程序博客网 时间:2024/06/07 17:33
泛型编程stack(括号匹配)
Time Limit(Common/Java):1000MS/3000MS Memory Limit:65536KByte
Total Submit:66 Accepted:33
Description
假设表达式中包含一种括号:圆括号,其嵌套顺序随意,即(()())或(())等为正确的格式,)(或((())或())均为不正确的格式。检验括号是否匹配可以用堆栈来实现当遇到 ( 时进栈,遇到 ) 时出栈进行匹配检验,如果出现不匹配的情况立即结束,否则继续取下一个字符。如果没有遇到不匹配的情况,最后判断栈是否为空,栈为空,括号匹配,否则不匹配。
Input
包括多组数据。每组1行,为包含括号的表达式。
Output
如果是正确的格式,输出“Yes”,否则输出“No”
Sample Input
(()())
(())
(()
())
(
)
Sample Output
Yes
Yes
No
No
No
No
#include<iostream>#include<stack>using namespace std;int main(){ stack<char> s; char c[20]; int i; while(cin>>c) { s.push(c[0]); i=1; while(c[i]!='\0') { if(s.size()==0) s.push(c[i]); else if(s.top()=='('&&c[i]==')') s.pop(); else s.push(c[i]); i++; } if(s.empty()==1) cout<<"Yes"<<endl; else { cout<<"No"<<endl; while(!s.empty()) s.pop(); } } return 0;}
1 0
- C++:泛型编程stack(括号匹配)
- 详解括号匹配问题(STL stack)
- 括号匹配(stack)
- stack模拟 括号匹配
- C++ Stack Application - (Parenthesis Matching) 堆栈应用之"括号匹配"
- c++STL的stack的应用之括号匹配
- 括号匹配-利用stack判断
- C实现Stack,并通过Stack来检查括号是否匹配
- C实例---括号匹配(栈实现)
- (C语言)括号匹配问题
- 用stack简单实现括号匹配
- #include<stack> 南阳oj括号匹配
- 用c语言用栈编程的括号匹配问题
- 校招编程题目(1) C++:括号匹配方案(京东)
- stack(括号,表达式)
- 编程练习3--括号匹配
- 括号匹配编程题--python
- [编程题]括号匹配问题
- 手机页面上body不随遮罩层上内容一起滚动
- C++简单例子说明一个问题
- Leetcode 35 - Search Insert Position
- iOS 绘图
- 线性规划(Matlab)丨线性规划问题与投资的收益和风险
- C++:泛型编程stack(括号匹配)
- 在visual studio 2013下使用Google Mock
- Educational Codeforces Round 6:(620)
- hdu2829Lawrence
- jxl读取Excel文件,dom4j写入xml文件例子
- 蓝桥杯:基础练习 十进制转十六制
- 初始化
- 毕业后的C++学习笔记
- Android开发——Intent中的各种FLAG