链队列基本运算(实验题3.4)
来源:互联网 发布:linux批量删除命令 编辑:程序博客网 时间:2024/05/29 18:41
虽然都是基本的数据结构,也很简单,但是亲自打下代码还是收获不小。
都是编译过了的。
////LiQueue.h//链队基本运算//2013-10-15 22:49//#pragma oncetypedef int ElemType;struct QNode{ ElemType data;QNode* next;};struct LiQueue{QNode* front;QNode* rear;};void InitQueue(LiQueue* &q);void ClearQueue(LiQueue* &q);void enQueue(LiQueue* &q,ElemType e); //进队int deQueue(LiQueue* &q,ElemType& e); //出队void DisQueue(LiQueue* q);
#include "LiQueue.h"#include <malloc.h>#include <stdio.h>void InitQueue( LiQueue* &q ){q = (LiQueue*)malloc(sizeof(LiQueue));q->front = q->rear = NULL;}void ClearQueue( LiQueue* &q ){QNode* p = q->front,*t = p->next;while( NULL != t){free(p);p = t;t = t->next;}}void enQueue( LiQueue* &q,ElemType e ){QNode* s = (QNode*)malloc(sizeof(LiQueue));s->data = e;s->next = NULL;if (q->rear == NULL) //空队{q->rear = q->front = s;} else{q->rear->next = s;q->rear = s;}}int deQueue( LiQueue* &q,ElemType& e ){if (q->rear == NULL) //空队{return 0;}QNode* t = q->front;e = q->front->data;if ( q->front == q->rear){q->front = q->rear = NULL;}else{q->front = q->front->next;}free(t);return 1;}void DisQueue( LiQueue* q ){if (q->front == NULL){return;}QNode* p = q->front;while(p != q->rear){printf("%d,",p->data);p = p->next;}printf("%d,",p->data);printf("\n");}
#include "LiQueue.h"int main(){LiQueue* q;InitQueue(q);enQueue(q,1);DisQueue(q);enQueue(q,2);DisQueue(q);enQueue(q,3);DisQueue(q);enQueue(q,4);DisQueue(q);enQueue(q,5);DisQueue(q);ElemType data;deQueue(q,data);DisQueue(q);ClearQueue(q);return 0;}
- 链队列基本运算(实验题3.4)
- 顺序队列基本运算(实验题3.3)
- 链栈基本运算(实验题3.2)
- 顺序栈基本运算(实验题3.1)
- 链队列的各种基本运算
- 链队列基本运算的实现
- 【数据结构之链队列的基本运算】
- 链队列的各种基本运算
- 队列——链式存储结构及其基本运算(链队列的另一种表达方式)
- 编写一个一个程序实现链队列各项基本运算(假设队列基本元素类型为Char)
- 数据结构第三章实验3.实现环形队列的各种基本运算
- 实现循环队列基本运算
- 队列的基本运算实现
- 环形队列的基本运算
- 实验四:顺序队列(循环队列)和链队列
- YTU 3004: 栈的基本运算(栈和队列)
- Problem D: 栈的基本运算(栈和队列)
- Problem D: 栈的基本运算(栈和队列)
- 嵌入式学习笔记(二)——初识驱动开发
- WF中的跟踪服务(2):使用SqlTrackingService
- Oracle10g 回收站及彻底删除table : drop table xx purge
- WF中的跟踪服务(3):使用SqlTrackingService跟踪规则
- Hashtable和HashMap区别
- 链队列基本运算(实验题3.4)
- WF中的跟踪服务(4):使用跟踪配置文件
- 音频实际开发1
- UITabBarController详解
- linux下的文件或文件夹的权限
- poj1934
- Flex4基础-组件定位和容器布局
- iOS 应用的启动页必须使用png图片
- 理解矩阵,矩阵背后的现实意义