博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LinkQueue by c
阅读量:5030 次
发布时间:2019-06-12

本文共 1680 字,大约阅读时间需要 5 分钟。

1 #pragma once 2  3 typedef char *Type; 4 typedef enum {
false, true} bool; 5 6 typedef struct LQNode { 7 Type data; 8 struct LQNode *next; 9 } LQNode, *LQNodePtr;10 11 typedef struct LQueue {12 LQNodePtr front;13 LQNodePtr rear;14 } LQueue, *LQueuePtr;15 16 void InitLQueue(LQueuePtr p);17 bool EnLQueue(LQueuePtr p, Type d);18 bool DeLQueue(LQueuePtr p, Type *d);
1 #include 
2 #include
3 #include "LinkQueue.h" 4 5 void InitLQueue(LQueuePtr p) 6 { 7 p->front = NULL; 8 p->rear = NULL; 9 }10 11 static bool IsEmpty(LQueuePtr p)12 {13 return NULL == p->front;14 }15 16 bool EnLQueue(LQueuePtr p, Type d)17 {18 LQNodePtr pNode;19 20 pNode = (LQNodePtr)malloc(sizeof(*pNode));21 if (NULL == pNode)22 return false;23 24 pNode->data = d;25 26 if (p->front == NULL)27 p->front = pNode;28 else29 p->rear->next = pNode;30 31 p->rear = pNode;32 33 return true;34 }35 36 bool DeLQueue(LQueuePtr p, Type *d)37 {38 LQNodePtr pNode;39 40 if (IsEmpty(p))41 return false;42 43 pNode = p->front;44 p->front = pNode->next;45 *d = pNode->data;46 free(pNode);47 48 return true;49 }
1 #include 
2 #include "LinkQueue.h" 3 4 int main(int argc, char **argv) 5 { 6 int i; 7 LQueue p; 8 Type d; 9 Type data[] = {
"Create", "LinkQueue", "Success", "!"};10 11 InitLQueue(&p);12 13 for (i = 0; i < 4; i++)14 EnLQueue(&p, data[i]);15 16 while(DeLQueue(&p, &d))17 printf("%s ", d);18 19 putchar('\n');20 21 return 0;22 }

转载于:https://www.cnblogs.com/robin-he0221/archive/2012/09/02/LinkQueue_by_c.html

你可能感兴趣的文章
销售类
查看>>
技术项目,问题
查看>>
线程池总结
查看>>
Learning to rank (software, datasets)
查看>>
git常见问题
查看>>
.NETFramework:template
查看>>
HM16.0之帧内模式——xCheckRDCostIntra()函数
查看>>
Jmeter性能测试 入门
查看>>
安卓动画有哪几种?他们的区别?
查看>>
Nodejs学习总结 -Express入门(一)
查看>>
web前端优化
查看>>
ssh 连接原理及ssh-keygen
查看>>
vs2013编译qt程序后中文出现乱码
查看>>
【转】IOS数据库操作SQLite3使用详解
查看>>
Android官方技术文档翻译——ApplicationId 与 PackageName
查看>>
【转】ButterKnife基本使用--不错
查看>>
【转】VS2012编译出来的程序,在XP上运行,出现“.exe 不是有效的 win32 应用程序” “not a valid win32 application”...
查看>>
函数中关于const关键字使用的注意事项
查看>>
微信架构(转)
查看>>
Web项目中的路径问题
查看>>