?? queue.cpp
字號:
#include <stdlib.h>
#include <stdio.h>
#include "item.h"
#include "queue.h"
typedef struct QUEUEnode* link;
struct QUEUEnode { Item item; link next; };
struct queue { link head; link tail; };
link NEW(Item item, link next)
{ link x = (link)malloc(sizeof *x);
x->item = item; x->next = next;
return x;
}
Q QUEUEinit(int maxN)
{ Q q = (Q)malloc(sizeof *q);
q->head = NULL; q->tail = NULL;
return q;
}
int QUEUEempty(Q q)
{ return q->head == NULL; }
void QUEUEput(Q q, Item item)
{
if (q->head == NULL)
{ q->tail = NEW(item, q->head);
q->head = q->tail;printf("No.%d element",item); return; }
q->tail->next = NEW(item, q->tail->next);
q->tail = q->tail->next;
printf("No.%d element",item);
}
Item QUEUEget(Q q)
{ Item item = q->head->item;
link t = q->head->next;
free(q->head); q->head = t;
return item;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -