c++实现栈和队列类
c++实现栈和队列类
- 栈(Stack)
- Stack示意图
- Stack.cpp
- 队列(queue)
- queue 示意图
- queue.cpp
栈(Stack)
Stack示意图

Stack.cpp
#pragma once
#include "ListStu.cpp"template<typename T>
class Stack
{
public:
/* * void push(T& tDate)* 参数一 : T& 用户数据* 功能 :往链表的头部压入一个数据* 返回值 :无
*/void push(const T& tDate);/** void pop()* 参数一 : 无* 功能 :往链表的头部弹出一个数据,删除头数据* 返回值 :无
*/void pop();/** void GetTopDate()* 参数一 : 无* 功能 :获取栈顶数据* 返回值 :T&
*/T& GetTopDate();/** int GetCount()* 参数一 : 无* 功能 :获取栈的元素个数* 返回值 :int
*/int GetCount();private:ListStu<T> m_Stack;//栈双向链表指针
};template<typename T>
void Stack<T>::push(const T& tDate)
{m_Stack.HeadInsert(tDate);
}template<typename T>
void Stack<T>::pop()
{m_Stack.DeleteHead();
}template<typename T>
T& Stack<T>::GetTopDate()
{return *(m_Stack.begin());
}template<typename T>
int Stack<T>::GetCount()
{return m_Stack.Size();
}
队列(queue)
queue 示意图

queue.cpp
#pragma once
#include "ListStu.cpp"
template<typename T>
class Queue
{
public:/** void push(T& tDate)* 参数一 : T& 用户数据* 功能 :往链表的尾部压入一个数据* 返回值 :无
*/void push(const T& tDate);/** void pop()* 参数一 : 无* 功能 :往链表的头部弹出一个数据,删除头数据* 返回值 :无*/void pop();/** void GetTopDate()* 参数一 : 无* 功能 :获取栈顶数据* 返回值 :T&*/T& GetTopDate();/** int GetCount()* 参数一 : 无* 功能 :获取栈的元素个数* 返回值 :int*/int GetCount();private:ListStu<T> m_Queue;//队列双向链表,排队:后进后出原则--push尾部插入,pop 头先出
};template<typename T>
void Queue<T>::push(const T& tDate)
{m_Queue.VailInsert(tDate);
}template<typename T>
void Queue<T>::pop()
{m_Queue.DeleteHead();
}template<typename T>
T& Queue<T>::GetTopDate()
{return *(m_Queue.begin());
}template<typename T>
int Queue<T>::GetCount()
{return m_Queue.Size();
}相关文章:
c++实现栈和队列类
c实现栈和队列类 栈(Stack)Stack示意图Stack.cpp 队列(queue)queue 示意图queue.cpp 栈(Stack) Stack示意图 Stack.cpp #pragma once #include "ListStu.cpp"template<typename T> class Stack { public: /* * void push(T& tDate)* 参数一 :…...
MySQL优化之索引下推
(/≧▽≦)/~┴┴ 嗨~我叫小奥 ✨✨✨ 👀👀👀 个人博客:小奥的博客 👍👍👍:个人CSDN ⭐️⭐️⭐️:传送门 🍹 本人24应届生一枚,技术和水平有限&am…...
【Java程序设计】【C00338】基于Springboot的银行客户管理系统(有论文)
基于Springboot的银行客户管理系统(有论文) 项目简介项目获取开发环境项目技术运行截图 项目简介 这是一个基于Springboot的银行客户管理系统,本系统有管理员、员工以及用户二种角色; 管理员:个人中心、管理员管理、客…...
C语言中大小写字母的转化
目录 C语言中大小写字母的转化 一、引言 二、C语言中的大小写转换函数 toupper()函数 tolower()函数 三、注意事项 四、总结 C语言中大小写字母的转化 一、引言 在C语言编程中,字符的处理是一个重要的环节。字符包括字母、数字、标点符号等,其中…...
Camunda7.18流程引擎启动出现Table ‘camunda_platform_docker.ACT_GE_PROPERTY‘的解决方案
文章目录 1、问题描述2、原因分析3、解决方案3.1、方案一:降低mysql版本3.2、方案二:增加nullCatalogMeansCurrent参数(推荐) 4、总结 1、问题描述 需要在docker中,部署Camunda流程引擎。通过启动脚本camunda-platfor…...
红队打靶:DR4G0N B4LL打靶思路详解(vulnhub)
目录 写在开头 第一步:主机发现 第二步:Web渗透 第三步:curl批量访问(无果) 第四步:Vulnhub目录发现 第五步: 图片隐写破解 第六步:ssh私钥登录 第七步:变量劫持提…...
SQL Server添加用户登录
我们可以模拟一下让这个数据库可以给其它人使用 1、在计算机中添加一个新用户TeacherWang 2、在Sql Server中添加该计算机用户的登录权限 exec sp_grantlogin LAPTOP-61GDB2Q7\TeacherWang -- 之后这个计算机用户也可以登录数据库了 3、添加数据库的登录用户和密码࿰…...
pytest如何在类的方法之间共享变量?
在pytest中,setup_class是一个特殊的方法,它用于在类级别的测试开始之前设置一些初始化的状态。这个方法会在类中的任何测试方法执行之前只运行一次。 当你在setup_class中使用self来修改类属性时,你实际上是在修改类的一个实例属性。在Pyth…...
配置前端项目到 github-pages
Quickstart for GitHub Pages - GitHub Docs...
VSCode使用教程
文章目录 VSCode简介VSCode下载安装配置语言环境CJavaPython VSCode偏好配置中文配置界面颜色字体大小快捷键 个人常规喜好 VSCode简介 VSCode(全称:Visual Studio Code)是一款由微软开发且跨平台的免费源代码编辑器。该软件支持语法高亮、代…...
vscode——本地配置(C和C++环境配置)(2)
vscode——本地配置(2) 配置C语言编译看看.json文件编译多个C文件C/C调试 今天我们继续来看vscode的配置,如果没看过上一次的文章,大家可以点击: https://blog.csdn.net/qq_67693066/article/details/136315696 配置C语…...
【从零开始学习重要知识点 | 第一篇】快速了解什么是幂等性以及常见解决方案
前言: 当我们在设计和实现分布式系统时,幂等性是一个非常重要的概念。幂等性可以简单地理解为:对于同一操作,不论执行多少次,产生的影响都是相同的。这个概念在分布式系统中非常重要,因为在这种环境下&…...
Jvm之内存泄漏
1 内存溢出 1.1 概念 java.lang.OutOfMemoryError,是指程序在申请内存时,没有足够的内存空间供其使用,出现OutOfMemoryError。产生该错误的原因主要包括:JVM内存过小。程序不严密,产生了过多的垃圾。 程序体现: 内…...
尚硅谷webpack5笔记2
Loader 原理 loader 概念 帮助 webpack 将不同类型的文件转换为 webpack 可识别的模块。 loader 执行顺序 分类pre: 前置 loadernormal: 普通 loaderinline: 内联 loaderpost: 后置 loader执行顺序4 类 loader 的执行优级为:pre > normal > inline > post 。相…...
笔记本Win 10系统查看电池健康状况
博主最近换了个笔记本电池,之前的电池容量明显变小了很多,而且出现了轻微鼓包的情况。所以用gpt问了一下怎么用系统的方法查看电池情况。 在Windows 10系统中,您可以通过以下步骤来查看笔记本电脑电池的健康状况: 打开命令提示符&…...
算法--动态规划(线性DP、区间DP)
这里写目录标题 tip数组下标从0开始还是从1开始 数学三角形介绍算法思想例题代码 最长上升子序列介绍算法思想例题代码 最长公共子序列介绍算法思想例题代码 tip 数组下标从0开始还是从1开始 如果代码中涉及到数组下标为i-1(有时候哪怕不是同一个数组也符合情况&am…...
【ArcGIS】统计格网中不同土地利用类型占比
基于ArcGIS统计格网中不同土地利用类型占比 数据准备ArcGIS操作步骤1、创建渔网(Create Fishnet)2、建立唯一标识3、选择格网4、提取不同类别土地利用类型5、各类用地面积计算 参考另:可能出现的问题总结Q1:ArcGIS获取唯一值&…...
算法竞赛实用板子
一、声明 自用版参考acwing,致力于实用、好用,板子中有个人理解,持续更新。 二、开板 1.快排 void quick_sort(int q[],int l,int r) {if(l>r)return; //出口int il-1,jr1,xq[lr>>1]; //分治方法while(i<j){do i;w…...
RPA中国 x UiPath | 第六届RPA极客挑战赛,3月16日上海开赛!
随着人工智能技术的不断进步以及数字化转型的深入,企业对于高效、精准、自动化的业务流程需求日益迫切。RPA技术作为连接人类工作与机器操作的桥梁,正逐渐从规则驱动发展为智能决策的助手。 由RPA中国联合UiPath共同主办的【第六届RPA极客挑战赛】将于2…...
算法打卡day5|哈希表篇01|Leetcode 242.有效的字母异位词 、19.删除链表的倒数第N个节点、202. 快乐数、1. 两数之和
哈希表基础知识 哈希表 哈希表关键码就是数组的索引下标,然后通过下标直接访问数组中的元素;数组就是哈希表的一种 一般哈希表都是用来快速判断一个元素是否出现集合里。例如要查询一个名字是否在班级里: 要枚举的话时间复杂度是O(n)&…...
工业现场设备的监控系统(有完整资料)
资料查找方式:特纳斯电子(电子校园网):搜索下面编号即可编号:T1532310M设计简介:本设计是工业现场设备的监控系统,主要实现以下功能:通过温湿度传感器检测温湿度,湿度过高…...
别再买错芯片了!全志A40i平台USB-WiFi选型与RTL8188FU/FTV驱动移植避坑指南
全志A40i平台USB-WiFi选型与驱动移植实战指南 在嵌入式设备开发中,Wi-Fi模块选型往往是最容易被低估的环节。许多工程师习惯性地认为"只要芯片型号对得上就能用",直到项目进度被卡在驱动兼容性问题上才追悔莫及。全志A40i平台作为工业级SoC的典…...
用Java给海康车牌机做个“小喇叭”和“公告牌”:完整项目集成实战
用Java打造海康车牌识别系统的智能交互模块:语音播报与LED显示深度集成指南 停车场入口处,一辆车缓缓驶入,车牌识别系统瞬间捕捉到车牌信息。LED屏幕上立即显示出"欢迎光临,车牌:京A12345",同时…...
终极Win11系统优化指南:深入解析Win11Debloat架构与技术实现
终极Win11系统优化指南:深入解析Win11Debloat架构与技术实现 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to declutter …...
【GD32】DMA实战指南:串口数据高效收发与循环模式应用详解
1. DMA技术基础与GD32实现原理 第一次接触DMA这个概念时,我也被它绕晕过。简单来说,DMA(Direct Memory Access)就像是你请了个私人助理,专门负责帮你跑腿搬数据。想象一下,你正在写代码,突然需…...
面向星上实时处理的银河飞腾多核DSP与FPGA异构计算平台构建
1. 银河飞腾DSP与FPGA异构计算平台概述 在卫星载荷这种特殊应用场景下,传统的通用处理器往往难以满足实时性、可靠性和低功耗的多重要求。我参与过多个航天项目,深刻体会到国产化异构计算平台的重要性。银河飞腾多核DSP搭配FPGA的方案,正好能…...
tao-8k快速上手:Xinference镜像5分钟部署教程,轻松处理长文档向量化
tao-8k快速上手:Xinference镜像5分钟部署教程,轻松处理长文档向量化 1. 环境准备与快速部署 1.1 获取Xinference镜像 访问CSDN星图镜像广场,搜索"Xinference"找到官方镜像。点击"一键部署"按钮,系统会自动…...
camera-controls 调试与问题排查:常见错误与解决方案汇总
camera-controls 调试与问题排查:常见错误与解决方案汇总 【免费下载链接】camera-controls A camera control for three.js, similar to THREE.OrbitControls yet supports smooth transitions and more features. 项目地址: https://gitcode.com/gh_mirrors/ca/…...
保姆级教程:用QMT打造全天候ETF自动交易系统(黄金/纳指/国债组合实战)
全天候ETF自动交易实战:用QMT构建黄金/纳指/国债智能组合 早上7点,当大多数上班族还在通勤路上,你的投资组合已经根据隔夜市场波动完成了自动调仓——这就是全天候交易系统的魅力。不同于传统盯盘方式,我们将通过QMT平台实现"…...
从“对话工具”到“自主智能体”:彻底搞懂AI Agent的核心定义、本质边界与落地实践
你是不是也经常听到「AI Agent」这个词,却始终分不清它和普通聊天机器人、加了插件的大模型到底有什么本质区别? 是不是见过太多号称「Agent」的产品,用起来却还是和ChatGPT没两样,只是多了几个功能入口? 这篇文章&…...
