当前位置:首页 > C++目录 > 正文内容

【数据结构】队列—基本概念

亿万年的星光5年前 (2021-02-21)C++目录17245

一、基本定义

队列是一种先进先出的线性结构,简称FIFO结构。特点就是“先进先出”


二、队列的相关概念

  1. 队头与队尾:允许元素插入的一端称为队尾,允许元素删除的一端称为队头

  2. 入队:队列的插入操作

  3. 出队:队列的删除操作


例如我们有一个存储型元素的队列,我们依次入队:{1,2,3}

添加元素时,元素只能从队尾一端进入队列,也即是2只能跟在1后面,3只能跟在2后面。如果在队列中的元素要出队:

元素只能从队首出队列,出队列的顺序为1,2,3,与入队列时的顺序一致,这就是所谓的“先进先出”。


三、队列的分类

  1. 基于数组的循环队列(循环队列)

  2. 基于链表的队列(链队列)

三、队列的基本操作

  1. 入队:push

  2. 出队:pop

  3. 求队列元素个数:size

  4. 判断是否为空: empty

  5. 队首元素:front

  6. 队尾元素:back

    扫描二维码推送至手机访问。

    版权声明:本文由青少年编程知识记录发布,如需转载请注明出处。

    分享给朋友:

    相关文章

    最小生成树(1)

    最小生成树(1)

    一、定义一个有 n 个结点的连通图的生成树是原图的极小连通子图,且包含原图中的所有 n 个结点,并且有保持图连通的最少的边。最小生成树可以用kruskal(克鲁斯卡尔)算法或prim(普里姆)算法求出...

    【入门篇】>>> DEVC++下载、安装、简单使用

    【入门篇】>>> DEVC++下载、安装、简单使用

    什么是DEVC++    DEVC++是一款编程工具,是一个Windows环境下的一个适合于初学者使用的轻量级C/C++ 集成开发环境(IDE),它是一款自由软件,遵守G...

    【图】并查集—优化

    【图】并查集—优化

    上一篇文章,简单介绍了并查集。这篇文章,介绍一下并查集的改进以及优化。find函数的优化(路径压缩)因为并查集的merge操作:void merge(int a, int...

    【数论】快速乘

    【数论】快速乘

    上一篇文章简单说了龟速乘的问题,有人觉得龟速乘还是太慢了,有没有什么办法再快一点,实际是有的,就是我们今天介绍的 快速乘。快速乘的原理和龟速乘不同,快速乘并不是基于二进制和位运算,严格来说,快速乘是利...

    【算法】分治算法

    前言所谓分治算法就是指分而治之,即将较大规模的问题分解成几个较小规模的问题,通过对较小问题的求解达到对整个问题的求解。当我们将问题分解成两个较小问题求解时的分治方法称为二分法。比如,我们玩过最简单的猜...

    DEVC++中的快捷键

    快捷键可以帮我们加快速度,下面介绍一下我们经常用的快捷键。 Ctrl+A   全选Ctrl +C   复制Ctrl +V   粘贴...