-
(队列)只允许在一端进行插入操作,而在另一端进行删除操作的线性表
-
与栈相反,队列是一种先进先出的线性表(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音乐