队列的实现(FIFO、链表)
来源:互联网 发布:苹果手机数据恢复软件 编辑:程序博客网 时间:2024/06/08 11:24
#include<stdio.h>#include<stdlib.h>#include<assert.h>typedefstruct queue_list{ struct queue_list *next; int value;}queue_list;static queue_list *front=NULL;static queue_list *rear=NULL;void insert(int value){ if(front==NULL) { front=(queue_list*)malloc(sizeof(queue_list)); rear=front; front->value=value; rear->value=value; } else { queue_list *new_list; new_list=(queue_list*)malloc(sizeof(queue_list)); new_list->value=value; rear->next=new_list; rear=new_list; }}void delete(){ assert(front!=NULL); queue_list *new_list; new_list=front; front=front->next; free(new_list);}int first(){ assert(front!=NULL); return front->value;}int main(){ insert(5); insert(4); insert(3); printf("%d\n",first()); delete(); printf("%d\n",first()); delete(); printf("%d\n",first()); delete(); printf("%d\n",first()); return 0;}