队列初探
来源:互联网 发布:淘宝清洗订单后果 编辑:程序博客网 时间:2024/06/14 04:15
主要概念:
队列是一种特殊的线性结构,它只允许在队列的首部(head)进行删除操作,称为“出队”,而在队列尾部(tail)进行插入操作,称为“入队”。当队列中没有元素时(即head==tail),称为空队列。即“先进先出”(First In First Out)原则。
队列将是以后学习广度优先搜索的以及队列优化的Bellman-Ford最短路算法的核心数据结构。所以现在将队列的三个基本元素(一个数组,两个变量)封装为一个结构体类型,如下:
#include<stdio.h>struct queue {int data[100]; //队列的主体,用来存储内容int head; //队首int tail; //队尾 }; int main(void){struct queue q;int i;//初始化队列q.head = 1;q.tail = 1;for(i = 1; i <= 9; i++) {// 依次向队列插入9个数 scanf("%d", &q.data[q.tail]);q.tail++;} while(q.head < q.tail) //当队列不为空的时候执行循环{//打印队首并将队首出队printf("%d ", q.data[q.head]);q.head++;// 先将新队首的数添加到队尾q.data[q.tail] = q.data[q.head];q.tail++;// 再将队首出队q.head++; } return 0;}
0 0
- 队列初探
- 算法学习--队列初探
- 消息队列 初探
- ASP.NET中消息队列(MSMQ)初探
- javascript队列执行池类初探
- Vijos 1243 初探单调队列优化DP
- java并发编程--同步队列器初探
- 初探oracle高级队列锁V$LOCK
- 初探
- 通过请求队列的方式来缓解高并发抢购(初探)
- 通过请求队列的方式来缓解高并发抢购(初探)
- NoSQL初探之人人都爱Redis:(3)使用Redis作为消息队列服务场景应用案例
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- JAVA Workspace in use or cannot be created, choose a different one
- My97DatePicker使用心得
- hbase 具体API
- Apache2+tomcat6负载均衡
- ffmpeg将图片合成视频
- 队列初探
- Android手机,使用adb上传文件,下载文件和安装文件
- Peter Norvig:自学编程,十年磨一剑
- [学习小结]Activiti5 流程实例管理
- HDU 2438 Turn the corner 三分法
- 网页加速之Chromium 预加载 Prerendering
- Jersey生成Json响应的配置
- 使用adb shell dumpsys检测Android的Activity任务栈
- new与malloc的不同