C链式队列实现
来源:互联网 发布:win7办公软件下载 编辑:程序博客网 时间:2024/06/05 04:36
#ifndef _LINKQUEUE_HEAD_H#define _LINKQUEUE_HEAD_H#include "head.h"typedef struct{LinkNode *front;LinkNode *rear;}LinkQueue;extern LinkQueue *create_empty_linkqueue();extern int is_empty_linkqueue(LinkQueue *q);extern int enter_linkqueue(LinkQueue *q,datatype data);extern datatype delete_linkqueue(LinkQueue *q);#endif
#include <stdio.h>#include <stdlib.h>#include "linkqueue.h"LinkQueue *create_empty_linkqueue(){LinkNode *head;LinkQueue *q;head = (LinkNode *)malloc(sizeof(LinkNode));if(head == NULL){printf("Fail to create empty linkqueue!\n");return NULL;}head->next = NULL;q = (LinkQueue *)malloc(sizeof(LinkQueue));if(q == NULL){printf("Fail to create empty linkqueue!\n");return NULL;}q->front = head;q->rear = head;return q;}int is_empty_linkqueue(LinkQueue *q){return q->front == q->rear ? 1 : 0;}int enter_linkqueue(LinkQueue *q,datatype data){LinkNode *tmp;tmp = (LinkNode *)malloc(sizeof(LinkNode));if(tmp == NULL){printf("Fail to enter linkqueu!\n");return -1;}tmp->data = data;q->rear->next = tmp;q->rear = tmp;return 0;}datatype delete_linkqueue(LinkQueue *q){LinkNode *tmp;if(is_empty_linkqueue(q)){printf("The linkqueue is empty!\n");return -1;}tmp = q->front;q->front = tmp->next;free(tmp);return q->front->data;}
0 0
- C实现链式队列
- C链式队列实现
- C语言实现链式队列
- C链式队列的实现
- C语言实现链式队列
- 链式队列(C实现)
- c语言实现链式队列
- 数据结构的C实现_链式队列
- 数据结构实现链式队列(C语言)
- C/C++ 堆栈、队列的链式实现
- C语言实现一个链式队列
- 队列的链式结构C语言实现
- 数据结构之---C语言实现链式队列
- 链式队列的实现(c++)
- 队列的链式实现(C语言)
- 链式循环队列实现(C语言)
- c语言数据结构实现-链式队列
- 数据结构--用C实现链式队列
- Linux下使cp命令不提示覆盖文件
- J-10
- 关于ajax 作为函数返回值的问题
- 【数据结构】栈的数组实现
- 布斯乘法算法的流程图
- C链式队列实现
- 【平凡晓声 Cocos2d-x】虚拟按键控制精灵移动1
- spring的split坑,你见过没?
- 面试常见问题--数据库优化 百万数据怎么优化
- 数据库的迁移
- 像使用Linux一样打开Win Bash
- android service HttpURLConnection下载网络数据
- 【数据结构_队列_Queue_0965】循环队列
- Java调优—Btrace监控Java线程/方法执行参数、执行时间(Windows)