队列是一种操作受限的线性表。队列的特点是先进先出(FIFO),队尾(rear)允许插入操作的一端,队首(front)允许删除操作的一端,新元素从队尾进,队首出,所以说,它是先进先出的一种线性表。
队列有链队列和顺序队列两种。
链队列不会出现队满这种现象,而顺序队列会发生队满现象。这于他们的存储方式有关。
下面我先用图来,简单介绍链队列和顺序队列,然后给大家相关代码,方便大家明白它的使用方式。
1,对于顺序队列,置队空Q.front = Q.rear = -1.
队列中的元素个数 m = MAXSIZE(后面程序有具体定义);
队满条件:m = MAXSIZE;,
2,循环队列的实现,即尾指针到达最后单元时,又回到头元素的位置。
循环队列入队时,尾指针加1的操作:Q.rear = (Q.rear+1)%MAXSIZE;
出队时,队头指针加1的操作则为:Q.front = (Q.front+1)%MAXSIZE;
队列长度为:length = (Q.rear-Q.front+MAXSIZE)%MAXSIZE;

本文介绍了队列的基本概念,强调了其先进先出(FIFO)特性,并分别阐述了链队列和顺序队列的特征。链队列避免了队满问题,而顺序队列在特定情况下会出现队满。详细说明了循环队列的队列长度计算及入队、出队操作,提供相关代码以辅助理解这两种数据结构的实现方式。
队列(链队和循环队列)&spm=1001.2101.3001.5002&articleId=79047352&d=1&t=3&u=456446b169234e8988f5dc765ffaac25)
572

被折叠的 条评论
为什么被折叠?



