NyistOJ 2 括号匹配
简单的栈的应用问题,利用STL中的栈来解决,当然…也可以自己手写栈。思路就是遇到左括号进栈,遇到右括号首先判断栈是否为空,若为空直接将这个右括号进栈,当然此时也就不匹配了;若非空则判断栈顶元素和右括号是否匹配,如果匹配则栈顶元素出栈。最后判断下栈是否为空即可。代码如下:

#include <iostream>
#include <algorithm>
#include <string>
#include <cstring>
#include <cmath>
#include <stack>
#include <vector>
#include <map>
#include <set>
#include <queue>
#include <utility>
#define ll long longusing namespace std ;int main(){int t ;cin >> t ;while ( t -- ){string str ;cin >> str ;stack<char> sta_ ;for ( int i = 0 ; i < str.size() ; i ++ ){if ( str[i] == '[' || str[i] == '(' ){sta_.push(str[i]) ;}else if ( str[i] == ']' ){if ( !sta_.empty() && sta_.top() == '[' ){sta_.pop() ;}else{sta_.push(str[i]) ;}}else if ( str[i] == ')' ){if ( !sta_.empty() && sta_.top() == '(' ){sta_.pop() ;}else{sta_.push(str[i]) ;}}}if ( sta_.empty() ){cout << "Yes" << endl ;}else{cout << "No" << endl ;}}return 0 ;
}

转载于:https://www.cnblogs.com/Cantredo/p/9745385.html

NyistOJ 2 括号匹配(栈)相关推荐

  1. H - Streets of Working Lanterns Gym - 101149H -括号匹配-栈模拟

    H - Streets of Working Lanterns Gym - 101149H 题意:括号匹配,有很多"?",这些"?"可以凑成任意一种,判断最后能 ...

  2. 括号匹配(栈和队列)

    #include<iostream> #include<stack> #include<string> using namespace std; int main ...

  3. python实现括号匹配不用栈_使用Python实现栈,判断括号是否平衡

    栈(Stack)在计算机领域是一个被广泛应用的集合,栈是线性集合,访问都严格地限制在一段,叫做顶(top). 举个例子,栈就想一摞洗干净的盘子,你每次取一个新盘子,都是放在这一摞盘子的最上头,当你往里 ...

  4. c语言括号匹配的检验,检验括号匹配的算法

    用栈实现检验括号匹配的算法没啥具体描述,数据结构的知识,急用,有重赏 思想是 先进栈,获取第一个半边括号,标记一下,继续进栈直到获取到第二个与之匹配的另一外括号,然后出栈,取出内容.就这样.. 数据结 ...

  5. 栈 -- 顺序栈、链式栈的实现 及其应用(函数栈,表达式求值,括号匹配)

    文章目录 实现 顺序栈实现 链式栈实现 应用 函数栈 的应用 表达式求值中 的应用 括号匹配中 的应用 我们使用浏览器的时候经常会用到前进.后退功能. 依次访问完一串页面 a – b – c之后点击后 ...

  6. P1944 最长括号匹配(栈模拟/DP)

    P1944 最长括号匹配 可以直接用栈模拟,把匹配好的标记一下, 最后找到最长的匹配输出即可. 如果是要求最长的长度的题那么只需要求数就行了,没必要把原序列真的按照题意改变 如果要求序列,那么只需要按 ...

  7. 2.2栈的另一个应用:括号匹配

    2.2栈的另一个应用:括号匹配 1.LeetCode官网 美网:https://leetcode.com/ 中文网 :https://leetcode-cn.com/ 英语不咋地,所以选择此处选择中文 ...

  8. python 栈_Python数据结构与算法05:基本结构:栈的应用之括号匹配

    注:本文如涉及到代码,均经过Python 3.7实际运行检验,保证其严谨性. 本文阅读时间约为7分钟. 算法流程 括号匹配情况介绍 我们经常会遇到类似(9-1)*(8+7)/(4-2).print(& ...

  9. sdut 2134 数据结构实验之栈与队列四:括号匹配

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

最新文章

  1. mysql事件探查器_【干货】Mysql的事件探查器-之Mysql-Proxy代理实战一(安装部署与实战sql拦截与性能监控)...
  2. 基础环境搭建--原始mavenWeb项目
  3. java1到100的数组_用java定义一个数组,长度为3: 1)循环输入数组元素值(元素值在1到100之间)...
  4. jQuery工具和方法(二)
  5. python菱形星号图案_python如何输出星号组成的菱形图形?
  6. 神仙情侣:一起读研读博,然后结婚……
  7. 研磨设计模式 - 关于单例模式
  8. Ajax学习笔记-客户端模板引擎-9
  9. 微信企业号开发:企业支付基础
  10. 软件的安全性应从哪几个方面去测试?
  11. Linux——vi/vim文本编辑器、用户管理、关机重启的相关命令
  12. keras自然语言处理(四)
  13. WDC2106 iOS10新特性及开发者要注意什么
  14. mui 写出Tab标签可滑动可点击的效果(下划线效果)
  15. 3d游戏建模行业发展前景和待遇怎么样?学习的渠道有哪些
  16. 生命不止,创作不停。
  17. visio中公式太小_针织布的价格计算公式你学会了吗?
  18. 扫描图片转换成word-捷速OCR文字识别
  19. 市场调研报告-全球与中国云产品数据管理(PDM)软件市场现状及未来发展趋势
  20. 系统死机重启调试分析

热门文章

  1. 介绍-FreeMarker
  2. 第一个 Python 程序(2)
  3. Java 仿QQ空间评论 后台代码实现 一张表
  4. XFTP软件连接虚拟机
  5. 模电学习5. 耦合电容、去耦电容与旁路电容
  6. C. Electrification(尺取)
  7. BZOJ 1202-狡猾的商人(带权并查集)
  8. android dashboard 开源,android dashboard布局
  9. Android下雪动画的实现
  10. git命令上传和下载代码