队列的链式存储方式
2017-11-28 16:35
295 查看
队列的链式存储方式
#include<stdio.h>
#include<stdlib.h>
typedef int ElemType;
typedef struct qnode //链式数据节点类型定义
{
ElemType data;
struct qnode *next;
}QNode;
typedef struct //链队类型定义
{
QNode *front;
QNode *rear;
}LiQueue;
//初始化队列
void InitQueue(LiQueue *q){
q=(LiQueue*)malloc(sizeof(LiQueue));
q->front=q->rear=NULL;
}
//进队列
void enQueue(LiQueue *q,ElemType e){
QNode *p;
p=(QNode*)malloc(sizeof(QNode));
p->data=e;
p->next=NULL;
if(q->rear==NULL)
q->front=q->rear=p;
else{
q->rear->next=p;
q->rear=p;
}
}
//出队列
int deQueue(LiQueue *q){
QNode *t;
if(q->rear==NULL)
return 0;
t=q->front;
if(q->front==q->rear)
q->front=q->rear=NULL;
else
q->front=q->front->next;
printf("%d ",t->data);
free(t);
return 1;
}
int main(){
LiQueue *q;
q=(LiQueue*)malloc(sizeof(LiQueue));
q->front=q->rear=NULL;
enQueue(q,5);
enQueue(q,7);
enQueue(q,6);
deQueue(q);
deQueue(q);
printf("\n");
}
本内容由安康学院"雨季"原创!
#include<stdio.h>
#include<stdlib.h>
typedef int ElemType;
typedef struct qnode //链式数据节点类型定义
{
ElemType data;
struct qnode *next;
}QNode;
typedef struct //链队类型定义
{
QNode *front;
QNode *rear;
}LiQueue;
//初始化队列
void InitQueue(LiQueue *q){
q=(LiQueue*)malloc(sizeof(LiQueue));
q->front=q->rear=NULL;
}
//进队列
void enQueue(LiQueue *q,ElemType e){
QNode *p;
p=(QNode*)malloc(sizeof(QNode));
p->data=e;
p->next=NULL;
if(q->rear==NULL)
q->front=q->rear=p;
else{
q->rear->next=p;
q->rear=p;
}
}
//出队列
int deQueue(LiQueue *q){
QNode *t;
if(q->rear==NULL)
return 0;
t=q->front;
if(q->front==q->rear)
q->front=q->rear=NULL;
else
q->front=q->front->next;
printf("%d ",t->data);
free(t);
return 1;
}
int main(){
LiQueue *q;
q=(LiQueue*)malloc(sizeof(LiQueue));
q->front=q->rear=NULL;
enQueue(q,5);
enQueue(q,7);
enQueue(q,6);
deQueue(q);
deQueue(q);
printf("\n");
}
本内容由安康学院"雨季"原创!
相关文章推荐
- 队列的链式存储方式的实现(Java语言描述)
- 队列的链式存储方式的实现(Java语言描述)
- 队列的链式存储的两种定义方式
- 3-7-队列的链式存储-栈和队列-第3章-《数据结构》课本源码-严蔚敏吴伟民版
- 队列的顺序存储与链式存储
- 队列的链式存储
- 队列的顺序存储和链式存储
- 队列的链式存储
- 队列的链式存储---链表实现(有头结点)
- 队列链式存储 - 设计与实现 - API函数
- LinkedList实现堆栈数据结构的存储方式与队列的数据结构存储方式
- PHP数据结构之七_队列的链式存储和队列的基本操作
- 队列的链式存储及其基本运算
- 队列的链式存储结构以及实现
- JAVA实现队列 队列的链式存储结构及操作
- 二叉树的链式存储,先序建树,以及4种遍历方式
- 队列链式存储 - 设计与实现 - API函数
- 队列的链式存储及其基本运算
- 链式存储的队列的实现
- 队列的链式存储