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

堆栈与队列算法-以链表来实现队列

目录

堆栈与队列算法-以链表来实现队列

C++代码


堆栈与队列算法-以链表来实现队列

队列除了能以数组的方式来实现外,也可以用链表来实现。在声明队列的类中,除了和队列相关的方法外,还必须有指向队列前端和队列末尾的指针,即front和rear。

C++代码

#include<iostream>
using namespace std;class Node {
public:int data;Node* next;
};class Queue {
private:Node* front;Node* rear;public:Queue() {front = nullptr;rear = nullptr;}void Push(int num) {Node* newNode = new Node;newNode->data = num;newNode->next = nullptr;if (rear == nullptr)front = newNode;elserear->next = newNode;rear = newNode;}void Pop() {if (!(front == nullptr)) {if (front == rear)rear = nullptr;front = front->next;}}void Print() {while (true) {if (!(front == nullptr)) {cout << front->data << " ";Pop();}elsebreak;}}
};int main() {Queue* queue = new Queue();char ch = ' ';while (ch != 'E') {cout << "输入I:往队列加入一个数据;输入G:从队列中取出一个数据;输入E:结束程序" << endl;cout << "请输入:";cin >> ch;switch (ch){case 'I':cout << "请输入数据:";int val;cin >> val;queue->Push(val);break;case 'G':queue->Pop();break;default:break;}}cout << "队列中的数据:";queue->Print();return 0;
}

结果输出

相关文章:

堆栈与队列算法-以链表来实现队列

目录 堆栈与队列算法-以链表来实现队列 C代码 堆栈与队列算法-以链表来实现队列 队列除了能以数组的方式来实现外&#xff0c;也可以用链表来实现。在声明队列的类中&#xff0c;除了和队列相关的方法外&#xff0c;还必须有指向队列前端和队列末尾的指针&#xff0c;即fron…...

快速入门:使用 Spring Boot 构建 Web 应用程序

前言 本文将讨论以下主题&#xff1a; 安装 Java JDK、Gradle 或 Maven 和 Eclipse 或 IntelliJ IDEA创建一个新的 Spring Boot 项目运行 Spring Boot 应用程序编写一个简单的 Web 应用程序打包应用程序以用于生产环境 通过这些主题&#xff0c;您将能够开始使用 Spring Boo…...

01.CentOS7静默安装oracle11g

CentOS7静默安装oracle11g 一、下载Oracle11g安装包二、开始安装oracle11g三、配置Oracle监听程序四、添加数据库实例五、设置开机启动六、登录后解除锁定 一、下载Oracle11g安装包 下载链接&#xff1a;https://pan.baidu.com/s/1gcLMFGX7-8ju7OoFOFLzQA 提取码&#xff1a;6…...

SASE安全访问服务边缘

自存用&#xff1a; 参考文档&#xff1a; 什么是安全访问服务边缘 (SASE)&#xff1f; | Microsoft 安全 网安人必读 &#xff5c;一文读懂SASE - 知乎...

k8s集群升级

目录 1. 部署cri-docker &#xff08;所有集群节点&#xff09; 2. 升级master节点 3. 升级worker节点 4. 部署containerd 1. 部署cri-docker &#xff08;所有集群节点&#xff09; k8s从1.24版本开始移除了dockershim&#xff0c;所以需要安装cri-docker插件才能使用docker …...

redis原理 主从同步和哨兵集群

主从库如何实现数据一致 我们总说的 Redis 具有高可靠性&#xff0c;又是什么意思呢&#xff1f;其实&#xff0c;这里有两层含义&#xff1a;一是数据尽量少丢失&#xff0c;二是服务尽量少中断。AOF 和 RDB 保证了前者&#xff0c;而对于后者&#xff0c;Redis 的做法就是增…...

四季古诗赏析

春晓 春眠不觉晓&#xff0c;处处闻啼鸟。夜来风雨声&#xff0c;花落知多少。 夏意 别院深深夏簟清&#xff0c;石榴开遍透帘明。树阴满地日当午&#xff0c;梦觉流莺时一声。 秋词 自古逢秋悲寂寥&#xff0c;我言秋日胜春朝。晴空一鹤排云上&#xff0c;便引诗情到碧霄。 …...

【网络协议】聊聊套接字socket

网络编程我们知道是通过socket进行编程的&#xff0c;其实socket也是基于TCP和UDP协议进行编程的。但是在socket层面是感知不到下层的&#xff0c;所以在设置参数的时候&#xff0c;其实是端到端协议智商的网络层和传输层。TCP是数据流所以设置为SOCK_STREAM&#xff0c;而UDP是…...

GEO生信数据挖掘(十一)STRING数据库PPI蛋白互作网络 Cytoscape个性化绘图【SCI 指日可待】

GEO生信数据挖掘&#xff08;十&#xff09;肺结核数据-差异分析-WGCNA分析&#xff08;900行代码整理注释更新版本&#xff09; 通过 前面十篇文章的学习&#xff0c;我们应该已经可以获取到一个”心仪的基因列表“了&#xff0c;相较于原始基因数量&#xff0c;这个列表的数…...

api接口更新钉钉文档

class OperateKnowledgeBaseExcel():robot_code # agent_id #app_key #群机器人app_secret #群机器人def __init__(self,union_id, workbook_id, worksheet_id):self.union_id union_idself.workbook_id workbook_id # 获取方式&#xff1a;... &g…...

Android---如何同view进行渲染

ViewRootImpl 在 Activity、window 和 View 三者关系之间起着承上启下的作用。一方面&#xff0c;ViewRootImpl 中通过 Binder 通信机制&#xff0c;远程调用 WindowSession 将 View 添加到 Window 中&#xff1b;另一方面&#xff0c;ViewRootImpl 在添加 View 之前&#xff0…...

【LeetCode:26. 删除有序数组中的重复项 | 双指针】

&#x1f680; 算法题 &#x1f680; &#x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 &#x1f340; &#x1f332; 越难的东西,越要努力坚持&#xff0c;因为它具有很高的价值&#xff0c;算法就是这样✨ &#x1f332; 作者简介&#xff1a;硕风和炜&#xff0c;…...

如何判断一个对象是不是一个空对象?

在JavaScript中&#xff0c;可以使用以下方法来判断一个对象是否为空对象&#xff1a; 1&#xff1a;使用Object.keys()方法&#xff1a;Object.keys()方法返回一个包含对象自身可枚举属性的数组。通过判断该数组的长度&#xff0c;可以确定对象是否为空对象。 function isEm…...

C/C++ “variable set but not used“的 警告问题解决方案

在编程的过程中&#xff0c;会有一些预留的变量暂时不用&#xff0c;但是编译过程编译器警告 会报错无法编译通过针对这个问题&#xff0c;采用下面的解决方案比较方便。 错误如下形式&#xff1a; 三种解决方法&#xff1a; 1.可以在变量前加上&#xff08;void&#xff09;就…...

JAVA安全入门之反射

反射 对于反射这个概念来说&#xff0c;直白的讲就是&#xff1a; 对象可以通过反射获取他的类&#xff0c;类可以通过反射拿到所有⽅法&#xff08;包括私有&#xff09;&#xff0c;拿到的⽅法可以调⽤而众所周知 JAVA 是一门静态语言&#xff0c;我们通过反射就可以达到动…...

【c++|opencv】一、基础操作---2.图像信息获取

every blog every motto: You can do more than you think. https://blog.csdn.net/weixin_39190382?typeblog 0. 前言 图像信息获取&#xff0c;roi 1. 图像信息获取 // 获取图像信息#include <iostream> #include <opencv2/opencv.hpp>using namespace cv; …...

HarmonyOS开发:探索组件化模式开发

前言 组件化一直是移动端比较流行的开发方式&#xff0c;有着编译运行快&#xff0c;业务逻辑分明&#xff0c;任务划分清晰等优点&#xff0c;针对Android端的组件化&#xff0c;之前有比较系统的总结过相关文章&#xff0c;感兴趣的朋友&#xff0c;可以查看&#xff0c;点击…...

目标URL启用了不安全的HTTP方法

修复中危web项目漏洞&#xff08;目标URL启用了不安全的HTTP方法&#xff09; 漏洞名 &#xff1a;目标URL启用了不安全的HTTP方法 等级&#xff1a; 中危 漏洞位置&#xff1a; PUT DELETE 描述&#xff1a; Web服务器配置为允许使用危险的HTTP方法&#xff0c;如PUT、MOVE、…...

大数据之LibrA数据库系统告警处理(ALM-12001 审计日志转储失败)

告警解释 根据本地历史数据备份策略&#xff0c;集群的审计日志需要转储到第三方服务器上。如果转储服务器满足配置条件&#xff0c;审计日志可以成功转储。审计日志转储失败&#xff0c;系统产生此告警。如果第三方服务器的转储目录磁盘空间不足&#xff0c;或者用户修改了转…...

大模型该被知道的技术实现-面向垂直领域

一个高度清晰的思维导图截图奉上&#xff08;下载&#xff1a;需3积分&#xff09; 内容截图...

告别树莓派5?手把手教你用OrangePi 5搭建家庭媒体中心(基于RK3588)

告别树莓派5&#xff1f;手把手教你用OrangePi 5搭建家庭媒体中心&#xff08;基于RK3588&#xff09; 在智能家居日益普及的今天&#xff0c;家庭媒体中心已成为许多科技爱好者的必备设备。传统的解决方案往往依赖于昂贵的商业NAS或性能有限的树莓派&#xff0c;而基于RK3588芯…...

工业以太网IO模块级联技术:从Modbus TCP到MQTT的部署实践

1. 项目概述&#xff1a;为什么我们需要“可级联”的工业IO模块&#xff1f;在工业自动化现场摸爬滚打十几年&#xff0c;最头疼的事情之一就是布线。一个车间里&#xff0c;PLC、传感器、执行器、仪表星罗棋布&#xff0c;传统的IO模块要么通过现场总线&#xff08;如Profibus…...

别再只用差速轮了!手把手教你为Navigation2仿真打造专属阿克曼底盘模型(附完整URDF/SDF文件)

从差速轮到阿克曼&#xff1a;打造高仿真Navigation2底盘模型的完整指南 在机器人仿真领域&#xff0c;差速轮底盘因其简单可靠而广受欢迎&#xff0c;但真实世界的车辆大多采用阿克曼转向机制。本文将带您深入理解两种模型的本质差异&#xff0c;并手把手指导如何从零构建或改…...

基于Hi3861与WM8978的嵌入式智能录音笔设计与实现

1. 项目概述&#xff1a;当Hi3861遇见WM8978&#xff0c;一个录音笔的诞生最近在捣鼓Hi3861这块开发板&#xff0c;想用它做点有意思的东西。Hi3861是海思&#xff08;现在叫海思了&#xff09;推出的一款面向IoT领域的Wi-Fi SoC&#xff0c;性能对于简单的音频处理来说&#x…...

开发过程中如何利用Taotoken的容灾路由保障服务高可用

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 开发过程中如何利用Taotoken的容灾路由保障服务高可用 在构建依赖大模型API的企业级应用时&#xff0c;服务的持续可用性是核心考量…...

python海龟绘图之点击屏幕事件处理

在《python海龟绘图之鼠标事件处理》中提到&#xff0c;onclick()函数能够对鼠标点击事件进行处理。但是该鼠标点击事件指的是鼠标点击到海龟图标上的事件&#xff0c;而如果要处理鼠标点击到海龟绘图窗口的任意位置事件的处理&#xff0c;则要用到onscreenclick()函数。通过on…...

GitHub下载速度提升10倍:Fast-GitHub终极解决方案

GitHub下载速度提升10倍&#xff1a;Fast-GitHub终极解决方案 【免费下载链接】Fast-GitHub 国内Github下载很慢&#xff0c;用上了这个插件后&#xff0c;下载速度嗖嗖嗖的~&#xff01; 项目地址: https://gitcode.com/gh_mirrors/fa/Fast-GitHub 还在为GitHub的龟速下…...

War3地图制作入门:不用写代码,用触发器和变量也能做出有趣玩法

War3地图制作入门&#xff1a;用触发器和变量打造专属游戏玩法 魔兽争霸3&#xff08;War3&#xff09;地图编辑器是游戏史上最强大的玩家创作工具之一&#xff0c;即使没有任何编程基础&#xff0c;也能通过触发器和变量系统创造出令人惊叹的游戏玩法。本文将带你从零开始&…...

研究助理/项目经理/内容编辑:Hermes Agent 3 类人格模板的 SOUL.md 配置要点

1. 三类人格不是“角色扮演”,而是上下文锚点的工程化切片 大多数人第一次看到 Hermes Agent 的 SOUL.md 配置时,会下意识把它当成一个“AI人设说明书”:研究助理要严谨、项目经理要干练、内容编辑要文雅。这种理解在小规模单次交互中勉强能用,但一旦进入真实研发流程——…...

3大核心功能构建学术研究知识库:Obsidian科研模板实战指南

3大核心功能构建学术研究知识库&#xff1a;Obsidian科研模板实战指南 【免费下载链接】obsidian_vault_template_for_researcher This is an vault template for researchers using obsidian. 项目地址: https://gitcode.com/gh_mirrors/ob/obsidian_vault_template_for_res…...