当前位置: 首页 > news >正文

线性表二——栈stack

第一题

#include<bits/stdc++.h>
using namespace std;
stack<char> s;
int n;
string ced;//如何匹配     出现的右括号转换成同类型的左括号,方便我们直接和栈顶元素
char cheak(char c){if(c==')') return '(';if(c==']') return '[';if(c=='}') return '{';return '\0';//如果传入的不是右括号,匹配失败,这里认为规定失败返回空 
} int main(){cin>>n;getchar();//读取输入流中剩下的回车,在n后面的回车 while(n--){//清空上一轮的数据while(!s.empty()) s.pop();getline(cin,ced);//读入空串 for(int i=0;i<ced.size();i++){if(s.empty()) s.push(ced[i]);else {char tmp=cheak(ced[i]);// 如果传入一个左括号,一定无法匹配,也就一定会入栈if(tmp!=s.top()) s.push(ced[i]);else s.pop(); }} if(s.empty()) cout<<"Yes"<<endl;else cout<<"No"<<endl;}return 0;
}

 第二题

#include<bits/stdc++.h>
using namespace std;
char sy; 
stack<int> s;
int main(){//如何取出字符串中的每个数字  ,利用getchar的特性 sy=getchar();while(sy!='@'){//1、要把后面连在的一起的数字全部取出 if(sy>='0'&&sy<='9'){int num=sy-'0';//num保存由字符转换过来的数字while(1){sy=getchar();if(sy>='0'&&sy<='9')//读入的字符仍旧是数字字符num=num*10+sy-'0'; else break;} //cout<<num<<endl;s.push(num);//读取出的数入栈 }//提前排出字符。if(sy=='.') {sy=getchar();continue;}int a=s.top();	s.pop();int b=s.top();	s.pop();switch(sy){//可以提前取出和弹出两个栈顶 case '+':s.push(b+a);break;case '-':s.push(b-a);break;case '*':s.push(b*a);break;case '/':s.push(b/a);break;} sy=getchar(); } cout<<s.top();return 0;
}

http://www.lryc.cn/news/449005.html

相关文章:

  • 浏览器发送请求后关闭,服务器的处理过程
  • tee命令:轻松同步输出到屏幕与文件
  • 【经验技巧】如何做好S参数的仿测一致性
  • js逆向——webpack实战案例(一)
  • Spring Boot 进阶-Spring Boot的全局异常处理机制详解
  • 滚雪球学MySQL[7.1讲]:安全管理
  • 反射及其应用---->2
  • [Python学习日记-32] Python 中的函数的返回值与作用域
  • 儿童发光耳勺值得买吗?儿童发光耳勺最建议买的五个牌子!
  • TIPS 二进制程序暴露符号给动态链接库使用
  • 【分布式微服务云原生】8分钟掌握微服务通信的艺术:Dubbo与OpenFeign全面解析
  • sicp每日一题[2.33]
  • 【Mybatis】常见面试题汇总 共56题
  • 每天一道面试题(17):服务网格学习笔记
  • 【nrm】npm 注册表管理器
  • 解压短视频素材资源网站推荐
  • Qemu开发ARM篇-6、emmc/SD卡AB分区镜像制作并通过uboot进行挂载启动
  • Spring Boot中使用ThreadPoolTaskScheduler实现轻量级多线程定时任务
  • 完全二叉树的节点个数 C++ 简单问题
  • 每日一题学习笔记
  • 从事人工智能学习Python还是学习C++?
  • 博客摘录「 CNN中的感受野和有效感受野会对模型产生怎样的影响?」2024年9月29日
  • AURIX单片机示例:开发入门与点亮LED
  • MySQL字符串函数与操作
  • HTML+CSS 水滴登录页
  • 基于Next.js和TailwindCss的TailwindCss
  • 若依开源系统多数据源整合clickhouse数据库详细步骤
  • Subdominator:一款针对漏洞奖励计划的子域名安全枚举工具
  • [leetcode]516_最长回文子序列
  • 电子相册|智能化电子相册|基于java的电子相册管理系统设计与实现(源码+数据库+文档)