链队列
来源:互联网 发布:鲜卑利亚 知乎 编辑:程序博客网 时间:2024/05/22 00:05
链队列的实质就是只限制在表头做添加,表尾做删除的单链表
一 链队列示意图
注:增加指向链表的队尾指针,便于在表尾做插入操作;其中Q为LinkQueue型的指针。
二 链队列基本运算
//置空队 void InitQueue(LinkQueue *Q) { Q->front=Q->rear=NULL; }
//判队空 intQueueEmpty(LinkQueue *Q) { return Q->front==NULL&&Q->rear==Null; //实际上只须判断队头指针是否为空即可 }
//入队void EnQueue(LinkQueue *Q,DataType x){QueueNode *p = (QueueNode *)malloc(sizeof(QueueNode));//申请新节点p->data = x;p->next = NULL;if(QueueEmpty(Q))Q->front = Q->rear = p;//将x插入到空队列else{//x插入到非空队列的尾Q->rear->next = p;//*p链到原队尾节点后Q->rear = p;//队尾指针指向性的队尾}}
//出队DataType DeQueue(LinkQueue *Q){DataType x;QueueNode *p;if(QueueEmpty(Q))Error("Queue undefflow");//下溢p = Q->front;//指向对头结点x = p->data;//保存头结点的数据Q->front = p->next;//将对头从节点上摘下来if(Q->rear=p)//原队中只有一个节点,删去后队列变空此时的头指针已为空Q->rear = NULL;free(p);return x;}
0 0
- 队列-循环队列/链队列
- 队列,链队列,循环队列
- 队列,链队列,循环队列
- 队列--链表队列
- 队列之链队列
- 08.队列.链队列
- 队列,链队列,链式存储的队列
- 队列---循环队列与链队列比较
- 顺序队列 - 循环队列 - 链队列
- 链队列
- 链队列
- 链队列
- 链队列
- 链队列
- 链队列
- 链队列
- 链队列
- 链队列
- 树链剖分学习
- bash漏洞补丁安装与下载,10月9日整理
- gdb调试多进程和多线程命令
- Blocks 和变量
- cocos2dx 3.1.1移植安卓apk (lua项目交叉编译 mac环境下)
- 链队列
- 马氏距离与欧式距离
- opencv程序十三:读取摄像头或视频文件
- Sqlite3安装与使用
- 并查集总结
- java static的加载顺序
- 分数变小数该方法不可行
- 怎样写产品经理求职信?
- 01串