队列
队列
Sophia_fez
干啥啥不行,可爱第一名.jpg
展开
-
leetcode *406. 根据身高重建队列(待研究)(2020.11.16)
【题目】*406. 根据身高重建队列假设有打乱顺序的一群人站成一个队列。 每个人由一个整数对(h, k)表示,其中h是这个人的身高,k是排在这个人前面且身高大于或等于h的人数。 编写一个算法来重建这个队列。注意:总人数少于1100人。示例输入:[[7,0], [4,4], [7,1], [5,0], [6,1], [5,2]]输出:[[5,0], [7,0], [5,2], [6,1], [4,4], [7,1]]【解题思路1】从低到高考虑class Solution { pu原创 2020-11-16 12:14:58 · 96 阅读 · 0 评论 -
leetcode *剑指 Offer 32 - III. 从上到下打印二叉树 III
【题目】*剑指 Offer 32 - III. 从上到下打印二叉树 III请实现一个函数按照之字形顺序打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右到左的顺序打印,第三行再按照从左到右的顺序打印,其他行以此类推。例如:给定二叉树: [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回其层次遍历结果:[ [3], [20,9], [15,7]]提示:节点总数 <= 1000【解题思原创 2020-09-15 23:05:40 · 180 阅读 · 0 评论 -
leetcode 225. 用队列实现栈(2020.3.1)
【题目】225. 用队列实现栈使用队列实现栈的下列操作:push(x) -- 元素 x 入栈pop() -- 移除栈顶元素top() -- 获取栈顶元素empty() -- 返回栈是否为空注意:你只能使用队列的基本操作-- 也就是 push to back, peek/pop from front, size, 和 is empty 这些操作是合法的。你所使用的语言也许不支持队列。 你可以使用 list 或者 deque(双端队列)来模拟一个队列 , 只要是标准的队列操作即可。你可以假设原创 2020-10-05 15:45:20 · 86 阅读 · 0 评论 -
leetcode *剑指 Offer 59 - II. 队列的最大值(2020.3.7)
【题目】*剑指 Offer 59 - II. 队列的最大值请定义一个队列并实现函数 max_value 得到队列里的最大值,要求函数max_value、push_back 和 pop_front 的均摊时间复杂度都是O(1)。若队列为空,pop_front 和 max_value 需要返回 -1示例 1:输入: ["MaxQueue","push_back","push_back","max_value","pop_front","max_value"][[],[1],[2],[],[],[]]原创 2020-09-29 21:36:18 · 159 阅读 · 0 评论 -
leetcode 933. 最近的请求次数
【题目】933. 最近的请求次数写一个 RecentCounter 类来计算最近的请求。它只有一个方法:ping(int t),其中 t 代表以毫秒为单位的某个时间。返回从 3000 毫秒前到现在的 ping 数。任何处于 [t - 3000, t] 时间范围之内的 ping 都将会被计算在内,包括当前(指 t 时刻)的 ping。保证每次对 ping 的调用都使用比之前更大的 t 值。示例:输入:inputs = ["RecentCounter","ping","ping","ping","原创 2020-05-10 17:26:21 · 210 阅读 · 0 评论 -
leetcode 剑指 Offer 59 - I. 滑动窗口的最大值 & **239. 滑动窗口最大值(单调队列)
【题目】同 239. 滑动窗口最大值(困难)给定一个数组 nums 和滑动窗口的大小 k,请找出所有滑动窗口里的最大值。示例:输入: nums = [1,3,-1,-3,5,3,6,7], 和 k = 3输出: [3,3,5,5,6,7] 解释: 滑动窗口的位置 最大值--------------- -----[1 ...原创 2020-03-30 23:31:44 · 326 阅读 · 0 评论