![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
队列
向光.
路过人间,绝非一瞬间.
展开
-
⭐北邮复试刷题429. N 叉树的层序遍历(按层入队出队BFS)(力扣每日一题)
只不过每次从队列拿元素的时候一次将一层的节点全部拿出,再将这些节点下层的children都同时入队即可。这样会造成最后多一次入队出队,所以最后加上一次判空操作即可;树的序列化输入是用层序遍历,每组子节点都由 null 值分隔(参见示例)。给定一个 N 叉树,返回其节点值的层序遍历。(即从左到右,逐层遍历)。原创 2024-02-17 13:40:41 · 637 阅读 · 0 评论 -
⭐北邮复试刷题103. 二叉树的锯齿形层序遍历 (力扣每日一题)
给你二叉树的根节点 root ,返回其节点值的 锯齿形层序遍历。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。原创 2024-02-16 15:06:00 · 503 阅读 · 0 评论 -
剑指 Offer II 041. 滑动窗口的平均值_____使用队列 / 循环数组实现
doublenext(intval)成员函数next每次调用的时候都会往滑动窗口增加一个整数,请计算并返回数据流中最后size个值的移动平均值,即滑动窗口里所有数字的平均值。//返回4.66667=(1+10+3)/3。//返回6.0=(10+3+5)/3。//返回5.5=(1+10)/2。给定一个整数数据流和一个窗口大小,根据该滑动窗口的大小,计算滑动窗口里所有数字的平均值。...原创 2022-07-17 13:17:24 · 125 阅读 · 0 评论 -
数据结构与算法Java——队列
队列1.数组模拟一次性队列代码实现package 队列;/** 数组模拟一次性队列** 这里在使用数组实现该队列时思维比较简单,但也同样使得该队列有些相当于 “一次性队列” ,即如果用很多次的话,可能就因为rear移动到* 尾部,导致不能使用了;** 这里使用双指针思想来使用数组实现队列,这样的好处是实现起来简单,但是队列内存不能复用,因为原先队列内元素占据的内存直接随着指针* 的移动所舍弃了,即在删除元素时没有真正的删除;* */public class ArrayQueue原创 2022-01-09 08:43:27 · 85 阅读 · 0 评论 -
学生搭配问题——C++实现队列
学生搭配问题一班有m个女生,有n个男生(m不等于n),现要开一个舞会。男女生分别编号坐在舞池的两边的椅子上。每曲开始时,依次从男生和女生中各出一人配对跳舞,本曲没成功配对者坐着等待下一曲找舞伴。请设计一系统模拟动态地显示出上述过程,要求如下:(1)输出每曲配对情况;(2)计算出任何一个男生(编号为X)和任意女生(编号为Y),在第K曲配对跳舞的情况。至少求出K的两个值;(3)尽量设计出多种算法及程序。提示:用队列来解决比较方便。题解:程序采用简单菜单驱动方式,通过让用户输入女生数量与男生数量以及歌曲的数原创 2022-01-09 08:07:27 · 1872 阅读 · 0 评论 -
Leetcode.622. 设计循环队列
622. 设计循环队列设计你的循环队列实现。 循环队列是一种线性数据结构,其操作表现基于 FIFO(先进先出)原则并且队尾被连接在队首之后以形成一个循环。它也被称为“环形缓冲器”。循环队列的一个好处是我们可以利用这个队列之前用过的空间。在一个普通队列里,一旦一个队列满了,我们就不能插入下一个元素,即使在队列前面仍有空间。但是使用循环队列,我们能使用这些空间去存储新的值。你的实现应该支持如下操作:MyCircularQueue(k): 构造器,设置队列长度为 k 。Front: 从队首获取元素。如原创 2022-01-05 23:06:32 · 128 阅读 · 0 评论 -
Leetcode.239. 滑动窗口最大值---暴力/优化暴力/单调队列
239. 滑动窗口最大值给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。示例 1:输入:nums = [1,3,-1,-3,5,3,6,7], k = 3输出:[3,3,5,5,6,7]解释:滑动窗口的位置 最大值--------------- -----[1 3 -1] -3 5 3 6原创 2021-11-22 17:53:08 · 257 阅读 · 0 评论