在C++语言中,什么是队列?

我对队列不是非常清楚,它就是数组吗?它是不是和链表有关?那么它和栈啊堆啊数组啊又是什么关系?我很迷惑,请高手指点,可以的话,麻烦写一段简单的代码解释,谢谢... 我对队列不是非常清楚,它就是数组吗?它是不是和链表有关?那么它和栈啊堆啊数组啊又是什么关系?我很迷惑,请高手指点,可以的话,麻烦写一段简单的代码解释,谢谢 展开
 我来答
小浣熊快递
2011-10-14 · TA获得超过517个赞
知道小有建树答主
回答量:237
采纳率:66%
帮助的人:98万
展开全部
这个问题么。根据自己的理解说一下吧。
数组跟队列在刚接触的时候确实很容易想到一起去。虽然我很想上来就解释这个,但是事实上是不行的。因为,你首先要明白一个概念。链表,顺序表,队列,栈,他们是什么关系。

链表,顺序表,是数据的一种数据的存放形式,页就是说,链表上个节点会有指针让你找到下个节点,他们不需要在内存中连续存放,顺序表则需要连续存放,第一个节点的位置决定了以后节点的位置。

而所谓队列,跟栈,是一个数据的逻辑概念,逻辑概念主要指的是数据能进行的操作。比如队列先进先出,栈后进先出。

更直观说,我们想要用的,是队列或者栈,由于真正运行需要在机器上运行,需要放入内存,因此我们要用链表或者顺序表实现队列或者栈。因此有顺序队列,链表队列,顺序栈,链表栈。

最后说你的困惑,你之所以吧队列跟数组联系到一起,那么你现在理解的队列,是顺序队列。他们的关系是什么呢,首先数组是语言的东西,队列是数据结构的东西。然后,如果你在C++里面实现书序队列,那么,你可以理解成,数组就是顺序数组(其实没有链表数组),它跟顺序队列,书序栈,顺序二叉树等等,是平行的概念。
vbtraz
2011-10-14 · TA获得超过5532个赞
知道大有可为答主
回答量:4152
采纳率:0%
帮助的人:4437万
展开全部
队列就是一个容器, 先进入的数据先出来,后进入的数据后出来
凡是具备这个关键性质的数据结构都叫队列, 你可以用数组也可以用链表
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
许诗文00
推荐于2018-04-13 · TA获得超过4290个赞
知道小有建树答主
回答量:425
采纳率:100%
帮助的人:26.4万
展开全部
队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。

队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列中没有元素时,称为空队列。
队列的数据元素又称为队列元素。在队列中插入一个队列元素称为入队,从队列中删除一个队列元素成为出队。因为队列只允许在一段插入,在另一端删除,所以只有最早进入队列的元素才能最先从队列中删除,故队列又称为先进先出(FIFO—first in first out)线性表。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
群雄并立
2011-10-14
知道答主
回答量:26
采纳率:0%
帮助的人:17.9万
展开全部
队列是数据的一种存储方式
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式