5. 数据结构—栈的实际案例

news2024/11/27 12:53:33

1. 10进制转8进制

void conversion(int n){
	LinkStack S;
	InitStack(S);
	while(n){
		Push(S,n%8);
		n=n/8;
	}
	while(!StackEmpty(S)){
		int x;
		Pop(S,x);
		printf("%d",x);
	}
}

2.  括号匹配

bool Matching(){
	LinkStack S;
	char ch,x;
	InitStack(S);
	while(cin>>ch){
		if(ch=='#')
			break;
		switch(ch){
			case '[':
			case '{':
			case '(':
				Push(S,ch);
				break;
			case ')':  //1.队列为空 2.不匹配 3. 匹配
				if(!StackEmpty(S)&&getTop(S)=='(')
					Pop(S,x);
				else 
					return false;
				break; 
			case ']':
				if(!StackEmpty(S)&&getTop(S)=='[')
					Pop(S,x);
				else 
					return false;
				break; 
			case '}':  
				if(!StackEmpty(S)&&getTop(S)=='{')
					Pop(S,x);
				else 
					return false;
				break; 
		}
	}
	return StackEmpty(S);
}

3. 表达式求值

表达式求值之前需要在前后均加入#。

表达式求值其实可以看做是两步:中缀表达式转换为后缀表达式(OPTR栈)+后缀表达式求值(OPND栈)

具体实现操作如下:

       具体实现代码后有时间再写。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2060672.html

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

相关文章

tomcat的session会话保持

1.Memcached简介 Memcached 只支持能序列化的数据类型,不支持持久化,基于 Key-Value 的内存缓存系统。 memcached虽然没有像redis 所具备的数据持久化功能,比如 RDB 和 AOF 都没有,但是可以通过做集群同步的方式, 让各…

netty websocket使用

一.maven依赖 <!-- springboot的依赖&#xff0c;如果系统不使用web相关的功能&#xff0c;也可以不使用 --> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>…

Matlab基本知识

&#x1f308;个人主页&#xff1a;羽晨同学 &#x1f4ab;个人格言:“成为自己未来的主人~” %% Matlab基本的小常识 % (1)在每一行的语句后面加上分号&#xff08;一定要是英文的) a3; a5; % (2)多行注释&#xff1a;选中要注释的若干语句&#xff0c;快捷键CtrlR % a3; %…

【Vue3】集成 Element Plus

【Vue3】集成 Element Plus 背景简介开发环境开发步骤及源码总结 背景 随着年龄的增长&#xff0c;很多曾经烂熟于心的技术原理已被岁月摩擦得愈发模糊起来&#xff0c;技术出身的人总是很难放下一些执念&#xff0c;遂将这些知识整理成文&#xff0c;以纪念曾经努力学习奋斗的…

openai whisper使用

whisper使用 介绍 Whisper是一种通用的语音识别模型。它是在大量不同音频数据集上训练的&#xff0c;也是一个多任务模型&#xff0c;可以执行多语言语音识别、语音翻译和语言识别。 GitHub&#xff1a;https://github.com/openai/whisper 论文链接&#xff1a;https://arx…

AI-Talk开发板更新CH32固件

一、说明 CSK6011A有33个GPIO&#xff0c;但把WIFI、LCD、TP、CAMERA这些外设全部加上后&#xff0c;CSK6011A的IO不够用&#xff0c;还差6个&#xff0c;所以增加了一颗IO扩展MCU。CSK6-MIX开发板使用的IO扩展MCU为CH32V003F4P6&#xff0c;并且SDK也包含了此MCU的固件。AI-Ta…

机械学习—零基础学习日志(如何理解概率论3)

随机变量的函数分布 一维随机变量分布&#xff0c;可以看到下图&#xff0c;X为不同情况的概率。而x如果是大于等于X&#xff0c;那么当x在40以内时&#xff0c;没有概率&#xff0c;为0。 当x变大&#xff0c;在40-80之间&#xff0c;那么x大于X的概率为&#xff0c;0.7&…

性能测试 —— 系统架构性能优化思路!

这篇文章重点还是谈已经上线的业务系统后续出现性能问题后的问题诊断和优化重点。 系统性能问题分析流程 我们首先来分析下如果一个业务系统上线前没有性能问题&#xff0c;而在上线后出现了比较严重的性能问题&#xff0c;那么实际上潜在的场景主要来自于以下几个方面。 业务出…

回归预测 | Matlab实现BES-ESN秃鹰搜索算法优化回声状态网络多输入单输出回归预测

回归预测 | Matlab实现BES-ESN秃鹰搜索算法优化回声状态网络多输入单输出回归预测 目录 回归预测 | Matlab实现BES-ESN秃鹰搜索算法优化回声状态网络多输入单输出回归预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab实现BES-ESN秃鹰搜索算法优化回声状态网络…

宿舍管理系统_o4dvi

TOC springboot574宿舍管理系统_o4dvi--论文 第一章 概述 1.1 研究背景 近些年&#xff0c;随着中国经济发展&#xff0c;人民的生活质量逐渐提高&#xff0c;对网络的依赖性越来越高&#xff0c;通过网络处理的事务越来越多。随着宿舍管理的常态化&#xff0c;如果依然采用…

JVM 运行时内存结构简介

JVM 运行时内存结构简介 一、前言二、JVM 运行时内存结构2.1 线程隔离数据区&#xff1a;2.2 线程共享数据区&#xff1a; 三、JVM 内存区域划分1. 程序计数器&#xff08;PC&#xff09;2. 虚拟机栈3. 本地方法栈4. Java 堆5. 方法区6. 运行时常量池 附录 一、前言 JVM&#…

LLM RAG检索生成的深度解析:理解其工作原理与应用

前言 2024年随着大模型进一步增强升级&#xff0c;越来越多的大模型应用落地&#xff0c;经过初期的探索和研究&#xff0c;目前业界逐渐收敛聚聚于两个主要的应用方向&#xff1a;RAG和Agents。今天我们就来先聊聊这个RAG&#xff5e; 一.RAG基本介绍 RAG&#xff1a;全称R…

Linux下enable bbr

最近开通一台VPS&#xff0c;操作系统选择了Ubuntu 22.04&#xff0c;需要启用bbr功能。 BBR 是 Bottleneck Bandwidth&#xff08;瓶颈带宽&#xff09;的缩写&#xff0c;而 RTT 是一种拥塞控制系统。您可以在 Linux 桌面上启用 TCP BBR&#xff0c;以改善整体网上冲浪体验。…

IO模型-----聊天室

运行1个服务器和2个客户端 实现效果&#xff1a; 服务器和2个客户端互相聊天&#xff0c;服务器和客户端都需要使用select模型去实现 服务器要监视2个客户端是否连接&#xff0c;2个客户端是否发来消息以及服务器自己的标准输入流 客户端要监视服务器是否发来消息以及客户端自己…

Elasticsearch 安装 windows

1&#xff0c;下载Elasticsearch Download Elasticsearch | Elastic 2,下载的压缩包解压后 3&#xff0c;进入bin文件夹&#xff0c;双击 elasticsearch.bat 启动 4&#xff0c;修改配置 启动成功后先关掉了ctrlc关掉 进入config文件夹&#xff0c;打开文件 elasticsearch.ym…

力扣 1425带限制的子序列和

这是一道 动态规划加单调队列的题&#xff0c;重点加强单调队列知识的学习 回归本题&#xff0c;这个题中&#xff0c;动态规划的部分略去&#xff0c;状态转移方程可求 单调队列部分 1维护队头 if(i-sta.front() k) sta.pop_front(); 2维护队尾 while(!sta.empty() &…

企业级web应用服务器tomcat

目录 一、Web技术 1.1 HTTP协议和B/S 结构 1.2 前端三大核心技术 1.2.1 HTML 1.2.2 CSS&#xff08;Cascading Style Sheets&#xff09;层叠样式表 1.2.3 JavaScript 二、tomcat的功能介绍 2.1 安装 tomcat 环境准备 2.1.1 安装java环境 2.1.2 安装并启动tomcat …

C++:模板 II(非类型模板参数,特化,分离编译)

目录 非类型模板参数 模板的特化 函数模板特化 类模板特化 全特化 偏特化 引用特化 指针特化 模板分离编译 非类型模板参数 什么是非类型模板参数&#xff1f; 顾名思义&#xff0c;它的类型形参并不是一个类型&#xff0c;就是用一个常量来作为类模板或函数模板的…

(软件测试)基础2

1.等价类划分法 步骤&#xff1a; 2.编写数据用例 例题&#xff1a;参考基础1中的手机号实例 2.边界值分析法

p8 Run的流程和Docker原理

docker run的运行原理图 docker是怎么工作的&#xff1f; docker是一个cs的一个结构的系统docker的守护进程运行在宿主机上面通过socket进行访问 其实就是看下面的这个图&#xff0c;通过客户端的命令来操作docker的守护进程然后启动一些容器&#xff0c;默认容器是不启动的 …