⭐️前言⭐️
大家好,我是大鹏,目前是一名大二的学生,现在已经放寒假了,这个假期我将会出一个算法与结构重要知识点讲解的专栏,以及一个每日一题LeedCode的专栏,关注我让你弯道超车,和我一起明年蓝桥杯打进国赛,加油!会则巩固之,不会更应学习之,!关注我,学好编程不迷路!
目录
☀️一、队列的概念
队列(queue)是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列中没有元素时,称为空队列。
队列的数据元素又称为队列元素。在队列中插入一个队列元素称为入队,从队列中删除一个队列元素称为出队。因为队列只允许在一端插入,在另一端删除,所以只有最早进入队列的元素才能最先从队列中删除,故队列又称为先进先出(FIFO—first in first out)线性表。
在 FIFO 数据结构中,将首先处理添加到队列中的第一个元素。
如上图所示,队列是典型的 FIFO 数据结构。插入(insert)操作也称作入队(enqueue),新元素始终被添加在队列的末尾。 删除(delete)操作也被称为出队(dequeue)。 你只能移除第一个元素。
在这里可以通过一个动态图来更加直观的展示出队列的先入后出
🍅二、队列的实现
#include <iostream>
class MyQueue {