链式队列的实现
来源:互联网 发布:开淘宝店要交哪些费用 编辑:程序博客网 时间:2024/05/17 06:16
#include <stdio.h> #include <stdlib.h>#define overflow -2 #define ok 1#define error -1typedef struct QNode {int data;struct QNode *next;}QNode,*QueuePtr;typedef struct {QueuePtr front;QueuePtr rear;}LinkQueue;int InitQueue(LinkQueue &Q){Q.front=Q.rear=(QueuePtr)malloc(sizeof(QNode));if(Q.front) return overflow;Q.front->next=NULL;return ok;} int EnQueue(LinkQueue &Q,int e){QueuePtr p;p=(QueuePtr)malloc(sizeof(QNode));if(!p) return overflow;p->data=e;p->next=NULL;Q.rear->next=p;Q.rear=p;return ok;}int DeQueue(LinkQueue &Q,int e){QueuePtr p;if(Q.front==Q.rear)return error;p=Q.front->next;e=p->data;Q.front->next=p->next;if(Q.rear==p)Q.rear=Q.front;free(p);return ok;}void Print(LinkQueue *q){ QueuePtr p; if(q->front == q->rear) return; p = q->front->next; while(p != q->rear) { printf("%d ",p->data); p = p->next; } printf("%d",p->data); printf("\n"); } void main(){int x,i; LinkQueue Q; InitQueue(Q); for(i=0;i<100;i++) { scanf("%d",&x); EnQueue(Q,x); } for(i=0;i<100;i++) { DeQueue(Q,x); Print(&Q); }}
0 0
- 链式队列的实现
- 链式队列的实现
- 链式队列的实现
- 链式队列的实现。
- 链式队列的实现
- 链式队列的实现
- 链式队列的实现
- 队列的链式实现
- 链式队列的实现
- 链式队列的实现
- 链式队列的实现
- 链式队列的实现
- 链式队列的实现
- 链式队列的实现
- 链式队列的实现
- 队列的链式实现
- 队列的链式实现
- 链式队列的实现
- [综合面试] 牛人整理分享的面试知识:操作系统、计算机网络、设计模式、Linux编程,数据结构总结
- 一个简单的线程例子
- CTO们值得考虑的十大企业级数据库
- handler的一些测试
- ant打包apk 依赖第三方项目
- 链式队列的实现
- JAVA自定义日志
- 使用 Visual Studio 2013 编译,调试 linux-0.11
- iOS 百度地图截屏
- C#开发实战1200例(第二卷)自学第一章,鼠标操作控制
- Python处理大文件
- Eclipse中文语言包安装和设置中文Doc
- 基于JDK动态代理的经典Spring AOP
- nginx 同时静态下载和web服务