【LeetCode】剑指 Offer 59 - II. 队列的最大值

文章目录

  • 【LeetCode】剑指 Offer 59 - II. 队列的最大值

package offer;import java.util.Deque;
import java.util.LinkedList;
import java.util.Queue;public class Solution59_2 {public static void main(String[] args) {Solution59_2 solution = new Solution59_2();solution.push_back(1);solution.push_back(2);System.out.println(solution.max_value());System.out.println(solution.pop_front());System.out.println(solution.max_value());}Queue<Integer> queue;Deque<Integer> deque;public Solution59_2(){queue = new LinkedList<>();deque = new LinkedList<>();}private int max_value(){return deque.isEmpty() ? -1 : deque.peekFirst();}private void push_back(int value){queue.offer(value);while(!deque.isEmpty() && deque.peekLast() < value){deque.pollLast();}deque.offerLast(value);}private int pop_front(){if(queue.isEmpty()) return -1;if(queue.peek().equals(deque.peekFirst())){deque.pollFirst();}return queue.poll();}
}

【LeetCode】剑指 Offer 59 - II. 队列的最大值相关推荐

  1. 【LeetCode笔记】剑指 Offer 59 - II. 队列的最大值(Java、辅助队列)

    文章目录 题目描述 思路 && 代码 二刷 题目描述 恢复打题的第二天打卡- 可以说是这道最小栈的兄弟题目了,很相似 总体思路还是一样,靠空间换时间- 也就是借助辅助队列 思路 &am ...

  2. 【算法】剑指 Offer 59 - II. 队列的最大值

    文章目录 1.概述 2.题解 1.概述 请定义一个队列并实现函数 max_value 得到队列里的最大值,要求函数max_value.push_back 和 pop_front 的均摊时间复杂度都是O ...

  3. Leetcode 剑指 Offer 58 - II. 左旋转字符串 (每日一题 20210830)

    字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部.请定义一个函数实现字符串左旋转操作的功能.比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结 ...

  4. Leetcode 剑指 Offer 57 - II. 和为s的连续正数序列 (每日一题 20210809)

    输入一个正整数 target ,输出所有和为 target 的连续正整数序列(至少含有两个数).序列内的数字由小到大排列,不同序列按照首个数字从小到大排列.示例 1:输入:target = 9 输出: ...

  5. leetcode剑指 Offer 53 - II. 0~n-1中缺失的数字(二分查找)

    一个长度为n-1的递增排序数组中的所有数字都是唯一的,并且每个数字都在范围0-n-1之内.在范围0-n-1内的n个数字中有且只有一个数字不在该数组中,请找出这个数字. 示例 1: 输入: [0,1,3 ...

  6. Leetcode 剑指 Offer 58 - II. 左旋转字符串 LCOF - Python

    class Solution:def reverseLeftWords(self, s: str, n: int) -> str:m = len(s)temp = list(s)temp.ext ...

  7. leetcode 打印_剑指 Offer 总结 - leetcode 剑指offer系列

    剑指 Offer 系列完结撒花!! 本篇文章是对整个系列的精华总结, 对系列的每篇文章进行了分类, 并用一句话概括每道题的思路, 方便大家理解和记忆, 当然也包含原文完整链接供大家参考 总的来说, 写 ...

  8. 【LeetCode】【队列】剑指 Offer 59 - I. 滑动窗口的最大值 思路解析和代码

    剑指 Offer 59 - I. 滑动窗口的最大值 题目链接 个人思路 题意 思路 滑动窗口的原理符合队列先进先出的性质,因此要考虑使用队列 关键要考虑一个问题 如果pop出当前最大值,要如何再次寻找 ...

  9. 【LeetCode】剑指 Offer 32 - II. 从上到下打印二叉树 II

    [LeetCode]剑指 Offer 32 - II. 从上到下打印二叉树 II 文章目录 [LeetCode]剑指 Offer 32 - II. 从上到下打印二叉树 II 一.层序遍历 BFS 一. ...

最新文章

  1. 关于window.localtion的用法几点总结
  2. 那些年你用过哪些消息中间件?为什么又弃了?现在用的是什么?
  3. Angular Component input字段传递值的几种变式 variant
  4. HANA kernel dump
  5. gitlab 删除历史修改记录_Excel表格使用记录单功能快速录入、修改、删除、查询数据...
  6. python初学小游戏_python学习(小游戏)
  7. msf win10漏洞_【CVE20200796】漏洞复现
  8. 【微软之--起源】(转载自腾讯科技)
  9. python连接SQLServer数据库创建数据表同时为每个字段加上对应的中文注释信息
  10. OMAPL138 DSP程序固化
  11. 周末做了一个区块链导航工具-Barfor导航
  12. 【移动安全高级篇】————2、浅谈Android软件安全自动化审计
  13. oracle取较小数,oracle 取小数位数
  14. XCode6如何创建Category
  15. IE无法打开internet站点已终止操作的解决办法
  16. 【ImportError: cannot import name ‘json‘ from ‘itsdangerous‘】
  17. 微信小程序,学习笔记(三)微信小计算器
  18. 微软数据科学家助理(Data Scientist Associate)认证考试通过经验分享(DP-100)
  19. 顶级的程序员是怎么样的?
  20. 计算机科技文献中cam,模具加工论文,关于CAD/CAM在高精密模具设计制造中的应用相关参考文献资料-免费论文范文...

热门文章

  1. mysql拉数据到本地_从mysql中dump数据到本地
  2. dubbo内置哪几种服务容器_Dubbo服务提供者几种启动方式
  3. java代码审查工具_APP开发常用的一些工具包、软件工具
  4. 一年级下册数学计算机应用题,一年级数学下册期中检测试题
  5. 深入理解Java类加载器(2)
  6. 原生DOM选择器querySelector和querySelectorAll
  7. Cocos2dx坐标转换
  8. Android中使用logwrapper来重定向应用程序的标准输出
  9. PHY芯片88EE1111 MDIO接口调试
  10. 一步一步SharePoint 2007之十五:实现Form认证(5)——更改认证的Provider