-
(队列)只允许在一端进行插入操作,而在另一端进行删除操作的线性表
-
与栈相反,队列是一种先进先出的线性表(First In First Out, FIFO)
-
与栈相同的是 一种重要的线性 结构,实现一个队列同样需要顺序表或链表作为基础

######链队列
typedef struct QNode{
ElemType data;
struct QNode \*next;
} QNode, *queuePrt;
typedef struct {
QyeyePrt front,rear;
} LinkQueue;
- 入队列操作
InsertQueue(LinkQueue *q,ElemType e)
{
QueuePty p;
p = (QueuePty)malloc(sizeof(QNode));
if (p == NULL)
exit(0)
p->data = e;
p->next = NULL;
q->rear->next = p;
q->rear = p;
}
- 出队列操作
DeleteQueue(LinkQueue *q,ElemType*e)
{
QueuePty p;
if (q->front = q->rear) return;
p = q->front->next;
\*e = p->data;
q->front->next = p->next;
if (q->rear == p)
q->rear = q->front;
free(p);
}
- 销毁队列
DestroyQueue(LinkQueue *q)
{
whlie (q->front){
q->rear = q->front->next;
free(q->front)
q->front = q->rear;
}
}
- ######看我那么可爱n(≧▽≦)n
- 关注我的微薄 (梁同桌):http://weibo.com/tongrenyinsheng
- 个人博客: www.liangtongzhuo.com
- ios 个人写的app (同人音声)ASMR音乐