括号匹配问题(栈应用)C++
()[ ] { }三种括号进行匹配。
左括号入栈,碰到右括号,就出栈一个元素,如果栈为空或者出栈的元素与该括号不匹配,则不合法,直接标记退出。
#include<iostream>
#include<string.h>
using namespace std;
int main() {string str;cin>>str;char s[1000];int top=0;int flag=1;for(int i=0; i<str.length(); i++) {if(str[i]=='('||str[i]=='['||str[i]=='{') s[top++]=str[i];else {if(str[i]==')') {if(s[--top]!='(') {flag=0;break;} } else if(str[i]=='}') {if(s[--top]!='{') {flag=0;break;}} else {if(s[--top]!='[') {flag=0;break;}}}}if(flag) cout<<"YES"<<endl;else cout<<"NO"<<endl;return 0;
}
括号匹配问题(栈应用)C++相关推荐
- Problem C: 括号匹配(栈和队列)
Problem C: 括号匹配(栈和队列) Time Limit: 1 Sec Memory Limit: 128 MB Submit: 76 Solved: 18 [Submit][Status ...
- YTU 3003: 括号匹配(栈和队列)
3003: 括号匹配(栈和队列) 时间限制: 1 Sec 内存限制: 128 MB 提交: 2 解决: 2 [提交][状态][讨论版] 题目描述 假设一个表达式中只允许包含三种括号:圆括号&quo ...
- P1944 最长括号匹配(栈模拟/DP)
P1944 最长括号匹配 可以直接用栈模拟,把匹配好的标记一下, 最后找到最长的匹配输出即可. 如果是要求最长的长度的题那么只需要求数就行了,没必要把原序列真的按照题意改变 如果要求序列,那么只需要按 ...
- 括号匹配+Java栈
括号匹配 import java.util.LinkedList;class MyStack{private int num;private LinkedList<Character>da ...
- 回文数、括号匹配(栈操作)
回文数 "xyzyx"是一个回文字符串,所谓回文字符串就是指正读反读均相同的字符序列,如"席主席"."记书记"."aha" ...
- python实现括号匹配不用栈_使用Python实现栈,判断括号是否平衡
栈(Stack)在计算机领域是一个被广泛应用的集合,栈是线性集合,访问都严格地限制在一段,叫做顶(top). 举个例子,栈就想一摞洗干净的盘子,你每次取一个新盘子,都是放在这一摞盘子的最上头,当你往里 ...
- c++ 之 括号匹配(栈)
其实这个代码我一好几天前就开始写了,一开始用c写,但是发现用c写一个正解应该用栈解决的c++问题对于一个焫鷄来讲就好比刚学会汉语拼音然后让你写英语作文的感觉,唉,今天就转手用c++来写. 栈还没大学明 ...
- c语言中缀表达式求值_数据结构考研笔记之栈与队列(四)栈与队列应用括号匹配、中缀表达式转前缀后缀问题...
文字:独木 排版:独木 图片:独木 栈与队列 1.括号匹配问题 栈 例题1 例题2-----不匹配例题1 例题3-----不匹配例题2 2. 表达式求值问题 例题 1.中缀表达式转前缀表达式 2.中缀 ...
- 括号匹配不一定用栈哦(洛谷P1739题题解,Java语言描述)
说明 有点标题党,严格地说,括号匹配用栈做比较规范. 问题是下面这题有点水啊,简便点大家都开心~~ 题目要求 P1739题目链接 分析 题目太水,所以说我们可以认为什么各种异常不会出现. 只需要--简 ...
- python括号匹配o(1)复杂度_Python面试题:使用栈处理括号匹配问题
括号匹配是栈应用的一个经典问题, 题目 判断一个文本中的括号是否闭合, 如: text = "({[({{abc}})][{1}]})2([]){({[]})}[]", 判断所有括 ...
最新文章
- sql server2008用ip远程连接
- vue 2.x项目 vue-qriously 生成二维码并下载、cliploard复制粘贴
- sql server中将一个字段根据某个字符拆分成多个字段显示
- POJ 3020 Antenna Placement
- Python安装Matplotlib,wordcloud,jieba第三方库
- NSA(美国国安局)泄漏Exploit分析
- 使用find命令查找文件
- EF6 CodeFirst+Repository+Ninject+MVC4+EasyUI实践(九)
- 颜色RGB 与 html 代码 对照表
- 大数据可视化常用的方式有哪些
- http_认证机制https加密TLSSSL密钥对(公钥私钥)
- Java 来判断手机号码是否已经存在例子
- Latex 加下角标
- 射频功放学习之MATLAB绘制ADS S11参数曲线
- linux panic 和 bug_on
- practice是什么意思_practice是什么意思|practice的中文翻译 - 医学词典
- 浅谈大型互联网企业入侵检测及防护策略
- 【ROS入门学习05|自定义话题消息,并且编程实现publisher和subscriber】
- 基于python下django框架 实现校园网站系统详细设计
- 除了Axure,还有哪些原型设计工具