我是靠谱客的博主 闪闪睫毛,最近开发中收集的这篇文章主要介绍队列与双端队列的数组实现方法 模板,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

 队列:

一种线性数据结构,除了可以用stl中的queue,一般还可以用数组q[N]和两个变量h,t存储,分别表示队首和队尾

int q[1000005];//用来模拟队列 
int h, t;//h表示对头,t表示队尾
h = 1, t = 0;//空队列的初始化
h <= t; //判断队列是否为空(非空条件)
int x; //表示需要压入队列的数字
q[++t] = x;//入队(表尾加元素) x 
h++;//出队(表头删元素) 
q[h];//查询队首(表头) 
// 时间复杂度O(1) 

双端队列:

类似普通队列,只是头尾都可以添加和删除元素

int q[1000005];//用来模拟队列 
int h, t;//h表示对头,t表示队尾
h = 1, t = 0;//空队列的初始化
h <= t; //判断队列是否为空(非空条件)
int x; //表示需要压入队列的数字
q[++t] = x;//表尾入队(表尾加元素) x 
t--;//表尾出队(表尾删元素)
q[--h] = x;//表头入队(表头加元素)x 
h++;//表头出队(表头删元素) 
q[h], q[t];//查询头元素,尾元素 
// 时间复杂度O(1) 

最后

以上就是闪闪睫毛为你收集整理的队列与双端队列的数组实现方法 模板的全部内容,希望文章能够帮你解决队列与双端队列的数组实现方法 模板所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(37)

评论列表共有 0 条评论

立即
投稿
返回
顶部