【每日OJ —— 622. 设计循环队列】

每日OJ ------ 622. 设计循环队列

1.题目:622. 设计循环队列

2.解法

1.本题有很多解法:可以使用数组,单链表,双链表,但是数组是相对链表来说比较简单的做法。
2.数组也有两种解法:
(1)可以定义size来实现循环队列判断为空和判断为满。
(2)可以定义k来取模%来实现循环队列判断为空和判断为满。

2.1.解法讲解

2.1.1.算法讲解

1.本题我们用数组的第二种解法,定义k来对循环队列判断为空,和判断为满,进行操作。
2.队列的创建(注意队列在创建时大小为k,即数组的size为k+1)
3.front指的是头指针,back为尾指针,但该尾指针是尾指针的下一个【下一次插入的位置】
4.队列为空时,front与back相同,队列为满时,back与front相减的绝对值为k)

2.1.2.代码实现
2.1.3.提交通过展示
相关推荐
wdfk_prog8 小时前
嵌入式面试真题第 11 题:RTOS 优先级翻转与实时任务阻塞的通用治理
c语言·缓存·面试·职场和发展·架构
QXWZ_IA11 小时前
1库1图1批是什么?千寻位置公安地图数据体系详解
科技·算法·能源·媒体·交通物流·政务
c2385611 小时前
Bug 猎手入门指南
c++·算法·bug
Reart12 小时前
Leetcode 213.打家劫舍2(内含闲谈,打劫真是技术活,好题,716)
后端·算法
Reart13 小时前
Leetcode 198.打家劫舍(716)
后端·算法
Jerry13 小时前
LeetCode 110. 平衡二叉树
算法
玖玥拾13 小时前
C++ 数据结构 八大基础排序算法专题
数据结构·c++·算法·排序算法
Tim_1013 小时前
【C++】017、new/delete与malloc/free的区别
java·数据结构·算法
从零开始的代码生活_14 小时前
C++ list 原理与实践:双向链表、迭代器与简化实现
开发语言·c++·后端·学习·算法·链表·list