链队列的初始化,建立,插入,查找,删除。
来源:互联网 发布:百度文库软件 编辑:程序博客网 时间:2024/05/16 08:48
参考:http://www.cnblogs.com/newwy/archive/2010/10/10/1847463.html
代码 //////////////////////////////////////////////链队列的初始化,建立,插入,查找,删除。////Author:Wang Yong // //Date: 2010.8.19 //////////////////////////////////////////////#include <stdio.h>#include <stdlib.h>typedef int ElemType;////////////////////////////////////////////定义队列结点类型typedef struct Qnode{ ElemType data; struct Qnode *next;} Qnode;///定义队列结点的头指针,为指针 typedef struct{ Qnode *front; Qnode *rear;}LQueue,*LinkQueue; ////////////////////////////////////////////队列初始化LinkQueue LinkQueueInit(){ LinkQueue Q; Qnode *P; Q = (LinkQueue)malloc(sizeof(LQueue));//申请头,尾指针结点 P = (Qnode *)malloc(sizeof(Qnode));//申请头结点 P->next = NULL; Q->front = Q->rear = P; return Q; }///////////////////////////////////////////入队void LinkQueueEnter(LinkQueue Q,ElemType x){ Qnode *p; p = (Qnode *)malloc(sizeof(Qnode));//申请新结点 p->data = x; p->next = NULL; Q->rear->next = p; Q->rear = p;} ///////////////////////////////////////////出队ElemType LinkQueueOut(LinkQueue Q){ ElemType x; Qnode *p; if(Q->front != Q->rear) { p = Q->front->next;; x = p->data; Q->front->next = p->next;//移动头指针 free(p); if(Q->front->next == NULL)//最后一个元素出队后,队空,修改队尾指针 Q->rear = Q->front; } else return 0; return x;} int main(){ LinkQueue lqueue; lqueue = LinkQueueInit(); ElemType x; printf("请输入入队列的元素:"); while(scanf("%d",&x) != EOF) { LinkQueueEnter(lqueue,x); } Qnode *p; for(p = lqueue->front->next; p != lqueue->rear->next; p = p->next ) printf("%d ",p->data); printf("出队列的结果为:"); while(lqueue->front!= lqueue->rear) { printf("%d ",LinkQueueOut(lqueue)); } return 0;}
- 链队列的初始化,建立,插入,查找,删除
- 链队列的初始化,建立,插入,查找,删除。
- 顺序队列的初始化,建立,插入,查找,删除
- 顺序队列的初始化,建立,插入,查找,删除。
- 单链表的初始化,建立,插入,查找,删除。
- 双链表的初始化,建立,插入,查找,删除
- 单链表的初始化,建立,插入,查找,删除
- 双链表的初始化,建立,插入,查找,删除
- 单链表的初始化,建立,插入,查找,删除
- 单链表的初始化,建立,插入,查找,删除。
- 双链表的初始化,建立,插入,查找,删除
- 双链表的初始化,建立,插入,查找,删除。
- 单链表的初始化,建立,插入,查找,删除
- 单链表的初始化,建立,插入,查找,删除。
- 单链表的初始化,建立,插入,查找,删除
- 单链表的初始化、建立、插入、查找、删除
- 链栈的初始化,建立,插入,查找,删除
- 顺序栈的初始化,建立,插入,查找,删除
- 【注意getline吃空格】第三届ACM/ICPC程序设计知识竞赛—— 又见回文
- 顺序队列的初始化,建立,插入,查找,删除。
- 实现加法:不使用加减乘除运算
- switch语句
- 给Jquery动态添加的元素添加事件
- 链队列的初始化,建立,插入,查找,删除。
- 《自己动手写操作系统》第三章a/pmtest1.asm
- ranger
- 互联网产品思考(一) —— 基本理念
- 再再论指针之什么是数组名
- 001-准备篇
- 在irrlicht中播放视频
- linux下一个很有用的命令:yes
- 决定坚持做好一件事