数据结构——队列

Posted sanwumanzi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据结构——队列相关的知识,希望对你有一定的参考价值。

一、队列概念及特征

1、队列概念
队列是限制在两端进行插入操作和删除操作的线性表,允许进行存入操作的一端称为“队尾”,允许进行删除操作的一端称为“队头”。当线性表中没有元素时,称为“空队”。特点:先进先出(FIFO)。
2、队列的特征
特殊的线性表,先进先出(FIFO)。
a、数据:
对于非空的队列,表头没有直接前驱,表尾没有直接后继,其它有且仅有一个直接前驱和一个直接后继。
b、操作:
只允许在表尾插入数据,在表头删除数据。

二、顺序队列

1、队列的顺序存储
typedef int datatype ;              /*定义队列中数据元素的数据类型*/
#define MAXSIZE 64               /*定义队列的容量*/
typedef struct
{ datatype data[MAXSIZE] ;    /*用数组作为队列的储存空间*/
int front,rear ;                        /*指示队头位置和队尾位置的指针*/
} sequeue ;                            /*顺序队列类型定义*/
sequeue *sq ;                         /*定义指向顺序队列的指针*/

三、链式队列

1、队列的链式存储
typedef int datatype ;              /*定义链队列中数据元素的数据类型*/
typedef struct node
{datatype data ;                      /*数据域*/
struct node *next ;                  /*链接指针域*/
} linklist ;                               /*链表元素类型定义*/
typedef struct
{linklist *front , *rear ;            /*链队列指针*/
} linqueue ;                            /*链队列类型定义*/
linkqueue *q ;                         /*定义指向链队列的指针*/
























以上是关于数据结构——队列的主要内容,如果未能解决你的问题,请参考以下文章

数据结构初学(java实现篇)——队列(转)

第四章:栈和队列

数据结构之队列

结构与算法-----队列

设计模式:命令模式——命令模式扩展之队列请求

数据结构10:栈和队列