在算术表达式中,除了加、减、乘、除等运算外,往往还有括号。包括有大括号{},中括号[],小括号(),尖括号<>等。 对于每一对括号,必须先左边括号,然后右边括号;如果有多个括号,则每种类型的左括号和右括号的个数必须相等。

对于c++ 可以用栈来进行匹配

对于c语言 可以用数组模拟即可

这次就用c++的栈来实现括号匹配

vs2017
//括号匹配
#include<iostream>
using namespace std;
#include<stack>
#include<stdio.h>
int main()
{stack<char> st;//定义栈stchar s[100];//输入括号内容      ()while (scanf("%s", &s) != EOF) {int len = strlen(s);for (int i = 0; i < len; i++){if (st.empty()) st.push(s[i]);else{char now = st.top();if (s[i] == ')'&& now == '(' || s[i] == '}'&& now == '{')  st.pop();else st.push(s[i]);}}if (st.empty()) cout << "yes" << endl;else cout << "no" << endl;}return 0;
}

栈的应用 括号匹配 c++相关推荐

  1. 栈应用之 括号匹配问题(Python 版)

    栈应用之 括号匹配问题(Python 版) 检查括号是否闭合 循序扫描被检查正文(一个字符)里的一个个字符 检查中跳过无关字符(所有非括号字符都与当前处理无关) 遇到开括号将其压入栈 遇到闭括号时弹出 ...

  2. 数据结构实验之栈四:括号匹配

     数据结构实验之栈四:括号匹配 Description 给你一串字符,不超过50个字符,可能包括括号.数字.字母.标点符号.空格,你的任务是检查这一串字符中的( ) ,[ ],{ }是否匹配. Inp ...

  3. 栈的应用--括号匹配的检验

    算法中设置一个栈,每次读入一个括号,若是右括号,则或者与置于栈顶的括号匹配,或者是不合法的情况,若是左括号,则入栈.若算法结束,栈是空的,则括号合法. 括号匹配函数 Status bracket_ma ...

  4. sdut 数据结构实验之栈四:括号匹配

    数据结构实验之栈四:括号匹配 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Discuss Problem Description ...

  5. c语言栈训练题目:括号匹配

    c语言栈训练题目:括号匹配 基本思路: 当前字符不是括号,不做处理: 当前字符是左括号,则进栈: 当前字符是右括号:若栈空,则表明该"右括号"多余,不匹 配,结束:否则和栈顶元素比 ...

  6. 栈应用之括号匹配(C语言)

    { ( hey! )[不管是电子表还是劳力士,他们的指针都是一样转动的.] } ) 宁是否发现了不舒服的地方,oh这种事是无法让强迫症忍受的,没错,这里的括号是不匹配的,就像C语言中,如果你输入的括号 ...

  7. JAVA栈应用之括号匹配

    JAVA栈应用之括号匹配 在数据处理中,常常要判断数据中的括号,应用栈来处理及其方便. 当用户输入一个字符串时,遇到左括号时,将其入栈,如'(' '["'{,而遇到右括号时,如')" ...

  8. [栈应用一] 括号匹配问题

    stack<int> S;   定义一个元素类型为int的堆栈S S.push(i);    向堆栈中压入一个数 int x = S.pop();   读取栈顶元素,并赋值x S.pop( ...

  9. 栈的应用-括号匹配的检验

    1.算法描述 在括号匹配算法中定义int flag = 1变量来标记匹配结果是成功还是失败! 利用数据结构栈,从左到右依次扫描字符串:若是遇到左括号入栈:若是遇到右括号:若栈非空,使用Pop(s,to ...

最新文章

  1. 按键驱动的恩恩怨怨之概述
  2. 智源研究院发布 2020 年世界十大 AI 进展
  3. error while loading shared libraries: ../../lib/libopencv_core.so
  4. 手机GSM--SIM卡体系结构
  5. android 加载动画效果_这效果炸了,网易云音乐“宇宙尘埃”特效
  6. dev c++怎么设置断点_Linux怎么挂载移动硬盘光盘U盘之案例分享
  7. iPhone4 FaceTime 联通官方教程
  8. 信息学奥赛一本通 1041:奇偶数判断 | OpenJudge NOI 1.4 03
  9. 为何 5G、物联网和区块链,可以成为科技铁三角?
  10. Ubuntu服务启动脚本
  11. Linux MPLS 初探
  12. 有什么低价好用的电容笔推荐?ipad可以用的手写笔分享
  13. solidity教程:solidity语言入门
  14. 华硕笔记本BIOS详细设置
  15. 小程序{errcode:40029,errmsg:invalid code, hints: [ req_id: 8H_oSa0564ns12 ]}
  16. 基于java的URP教务系统爬虫实现
  17. 霍营派出所办理居住证
  18. Hadoop 3.x 笔记(配置、命令、脚本、重要图示、代码实现)
  19. SNS网站LinkedIn的Java架构技术
  20. php实现教学卡片,如何实现卡片翻阅效果

热门文章

  1. pytorch的DP和DDP
  2. 代理沙特SASO贸促会认证
  3. ExtJs自学教程(2):从DOM看EXTJS
  4. win7下开启wifi热点共享网络的方法
  5. 劫持流量原理是什么?关于劫持流量的种类和产生
  6. 弹性和瞬态故障处理库Polly之重试策略
  7. PTA实验3-1 求一元二次方程的根 (20 分)
  8. Python求均值,方差,标准差
  9. CSS中的代表的什么
  10. latex中biblatex参考文献的标点、分隔符、本地化字符串中英文切换