线性表二——栈stack

news2024/11/18 1:32:30

第一题

#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.coloradmin.cn/o/2176249.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL 高级 - 第十五章 | MySQL 事务日志

目录 第十五章 MySQL 事务日志15.1 redo 日志15.1.1 为什么需要 redo 日志15.1.2 redo 日志的优点与特点15.1.3 redo 的组成15.1.4 redo 的整体流程15.1.5 redo log 的刷盘策略15.1.6 不同刷盘策略演示15.1.7 写入 redo log buffer 过程15.1.8 redo log file 15.2 undo 日志15.…

lombok详细教程(详解)

Lombok 极速上手 此笔记来自于b站白马 背景 ⚠️ 开始学习Lombok前至少需要保证完成 JavaSE 课程中的注解部分&#xff0c;本课程采用的版本为 Java17 我们发现&#xff0c;在以往编写项目时&#xff0c;尤其是在类进行类内部成员字段封装时&#xff0c;需要编写大量的 get…

看480p、720p、1080p、2k、4k、视频一般需要多大带宽呢?

看视频都喜欢看高清&#xff0c;那么一般来说看电影不卡顿需要多大带宽呢&#xff1f; 以4K为例&#xff0c;这里引用一位网友的回答&#xff1a;“视频分辨率4092*2160&#xff0c;每个像素用红蓝绿三个256色(8bit)的数据表示&#xff0c;视频帧数为60fps&#xff0c;那么一秒…

基于微信小程序爱心领养小程序设计与实现(源码+参考文档+定制开发)

博主介绍&#xff1a; ✌我是阿龙&#xff0c;一名专注于Java技术领域的程序员&#xff0c;全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师&#xff0c;我在计算机毕业设计开发方面积累了丰富的经验。同时&#xff0c;我也是掘金、华为云、阿里云、InfoQ等平台…

excel统计分析(5): 非线性回归分析

非线性回归模型分类 非线性回归分析和预测模型包括&#xff1a;指数、对数、幂函数、多项式等。 &#xff08;1&#xff09;指数回归模型 指数回归模型适用于因变量随自变量的增加而迅速增长或减少的情况。 Yβ0⋅e^(β1⋅X) 其中&#xff0c;e是自然对数的底数&#xff0c;…

锐捷 NBR 1300G路由器 越权CLI命令执行漏洞

漏洞描述 锐捷NBR 1300G路由器 越权CLI命令执行漏洞&#xff0c;guest账户可以越权获取管理员账号密码 漏洞复现 FOFA title"锐捷网络 --NBR路由器--登录界面" 请求包 POST /WEB_VMS/LEVEL15/ HTTP/1.1 Host: Connection: keep-alive Content-Length: 73 Autho…

[SAP ABAP] SELECTION-SCREEN

SELECTION-SCREEN用来调节系统生成的画面 REPORT z437_test_2024.TABLES: mara, zdbt_sch_437.SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE TEXT-001. " Title1 PARAMETERS:p_1 DEFAULT A,p_2 TYPE char10. SELECTION-SCREEN END OF BLOCK b1.SELECTION-SCREEN …

深入理解同步和异步与reactor和proactor模式

在现代网络编程中&#xff0c;I/O 设计模式对于提高性能和资源利用率至关重要。本文将探讨两种主要的网络 I/O 设计模式&#xff1a;同步 I/O 和异步 I/O&#xff0c;以及它们的实现方式。 同步 I/O 同步 I/O 模式要求用户通过系统调用函数&#xff0c;如 read(), write(), c…

Win10系统使用mstsc远程电脑的时候发现隔一段时间就无法使用剪贴板_rdpclip---Windows运维工作笔记055

最近在使用温湿系统的远程桌面功能的时候发现,每当使用一段时间的时候,这个时候远程桌面功能的粘贴板就没办法使用了。 正常情况下,不管我一个电脑远程了多少台电脑,那么这些电脑之间都是可以使用粘贴板的,可以用来从一个电脑中截了图,然后粘贴到另一个电脑中。 但是现…

【C++笔试强训】如何成为算法糕手Day6

学习编程就得循环渐进&#xff0c;扎实基础&#xff0c;勿在浮沙筑高台 循环渐进Forward-CSDN博客 目录 循环渐进Forward-CSDN博客 第一题&#xff1a;大数加法 思路&#xff1a; 第二题&#xff1a;链表相加 思路&#xff1a; 第三题&#xff1a;大数乘法 思路&#xf…

第五十八周周报 FE-GNN

文章目录 week58 FE-GNN摘要Abstract一、大数据相关1. 完全分布式zookeeper2. 污水处理过程2.1 污水处理的基本方法2.2 污水处理基本工艺流程 二、文献阅读1. 题目2. Abstract3. 文献解读3.1 Introduce3.2 创新点 4. 网络框架4.1 特征子空间平坦化4.2 结构化主成分4.3 结论 5. …

class 027 堆结构常见题目

这篇文章是看了“左程云”老师在b站上的讲解之后写的, 自己感觉已经能理解了, 所以就将整个过程写下来了。 这个是“左程云”老师个人空间的b站的链接, 数据结构与算法讲的很好很好, 希望大家可以多多支持左程云老师, 真心推荐. https://space.bilibili.com/8888480?spm_id_f…

C++入门基础知识88(实例)——实例13【求一个数的阶乘】

成长路上不孤单&#x1f60a;&#x1f60a;&#x1f60a;&#x1f60a;&#x1f60a;&#x1f60a; 【14后&#x1f60a;///C爱好者&#x1f60a;///持续分享所学&#x1f60a;///如有需要欢迎收藏转发///&#x1f60a;】 今日分享关于求一个数的阶乘的相关内容&#xff01; …

Oracle Data Guard备库清理归档脚本

1 说明 我们知道在Oracle Data Guard架构中归档模式是必须打开的&#xff0c;主库将日志传输到备库&#xff0c;最终存放到备库的归档日志文件中。随着系统的运行&#xff0c;归档日志文件会不断累积&#xff0c;如果不及时清理&#xff0c;则会造成归档空间被写满&#xff0c…

进程的那些事--实现shell

目录 前言 一、预备知识 二、实现步骤 1.思路 2.实现 总结 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 学习的本质就是变现 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 一、预备知识 char * fgets ( char * str, i…

Qt开发技巧(十)新版随机数,模拟鼠标移动,QTextEdit卡死问题,函数返回值,参数结构化,选项卡控件,窗体属性

继续讲一些Qt开发中的技巧操作&#xff1a; 1.新版随机数 Qt中有自己的随机数取值方法&#xff0c;Qt5.10以前使用qsrand方法&#xff0c; Qt5.10以后提供了新的类 QRandomGenerator QRandomGenerator64 管理随机数&#xff0c;使用更方便&#xff0c;尤其是取某个区间的随机数…

【尚跑】2024铜川红色照金半程马拉松赛,大爬坡152安全完赛

1、赛事背景 2024年9月22日8点&#xff0c;2024铜川红色照金半程马拉松赛于照金1933广场鸣枪起跑&#xff01; 起跑仪式上&#xff0c;6000位选手们合唱《歌唱祖国》&#xff0c;熟悉的旋律响彻陕甘边革命根据地照金纪念馆前&#xff0c;激昂的歌声凝聚心中不变的热爱。随着国…

短视频矩阵系统源码图--示例

短视频矩阵系统源码通常指的是用于构建和管理短视频平台的一整套软件代码。这些代码包括了前端用户界面、后端服务器逻辑、数据库设计以及可能的移动应用客户端等部分。源码是软件的原始代码&#xff0c;开发者可以通过阅读和修改源码来定制或增强系统的功能。 开发短视频矩阵系…

第一弹:llama.cpp编译

1.编译llama.cpp命令行&#xff08;电脑版本&#xff09;&#xff1b; 2.交叉编译安卓命令行版本。 一、Llama.cpp是什么&#xff1f; 二、Llama.cpp编译 首先我们尝试编译llama.cpp. 2.1 下载llama.cpp 项目的github地址&#xff1a; https://github.com/ggerganov/llama…

PMP--二模--解题--151-160

文章目录 14.敏捷–流程&#xff1a;151、 [单选] 在每日站会上&#xff0c;项目负责人注意到一位资深开发人员正在将一些简单的待办事项重新分配给其他团队成员&#xff0c;理由是让资深开发人员处理复杂事项更有效率。项目负责人应该怎么做&#xff1f; 14.敏捷--通才型专家-…