文章 2024-08-06 来自:开发者社区

【Leetcode刷题Python】剑指 Offer 09. 用两个栈实现队列

1 题目 用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 ) 示例 1: 输入:[“CQueue”,“appendTail”,“deleteHead”,“...

文章 2023-05-06 来自:开发者社区

图解LeetCode——剑指 Offer 09. 用两个栈实现队列

一、题目用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 )二、示例示例 1:【输入】["CQueue","appendTail","deleteHead","deleteHead","deleteHead"][[],[3],[....

图解LeetCode——剑指 Offer 09. 用两个栈实现队列
文章 2023-05-05 来自:开发者社区

图解LeetCode——剑指 Offer 59 - II. 队列的最大值

一、题目请定义一个队列并实现函数 max_value 得到队列里的最大值,要求函数max_value、push_back 和 pop_front 的均摊时间复杂度都是O(1)。若队列为空,pop_front 和 max_value 需要返回-1二、示例2.1> 示例 1:【输入】 ["MaxQueue","push_back","push_back","max_value","pop_fr....

图解LeetCode——剑指 Offer 59 - II. 队列的最大值
文章 2023-02-06 来自:开发者社区

leetcode-每日一题剑指 Offer II 041. 滑动窗口的平均值(队列模拟)

题目链接:https://leetcode.cn/problems/qIsx9U/思路方法一、队列模拟直接想法题目要求我们计算滑动窗口里所有数的平均值,给定了窗口大小size,我们在窗口里的数字个数不超过窗口大小时,按照个数计算平均值,一旦超过窗口大小,我们则需要移动窗口,计算当前窗口里的平均值算法1.设计MovingAverage结构体存放窗口大小size,当前窗口数总和sum,记录当前窗口的....

leetcode-每日一题剑指 Offer II 041. 滑动窗口的平均值(队列模拟)
文章 2022-06-13 来自:开发者社区

LeetCode(剑指 Offer)- 59 - II. 队列的最大值

题目链接:点击打开链接题目大意:略。解题思路:插入操作虽然看起来有循环,做一个插入操作时最多可能会有 n 次出队操作。但要注意,由于每个数字只会出队一次,因此对于所有的 n 个数字的插入过程,对应的所有出队操作也不会大于 n 次。因此将出队的时间均摊到每个插入操作上,时间复杂度为 O(1)【注意题目说的是“均摊”,而不是最差情况】。相关企业字节跳动AC 代码Java// 解决方案(1) clas....

文章 2022-06-13 来自:开发者社区

LeetCode(剑指 Offer)- 09. 用两个栈实现队列

题目链接:点击打开链接题目大意:略。解题思路:略。相关企业字节跳动Facebook亚马逊(Amazon)谷歌(Google)微软(Microsoft)AC 代码Java// 解决方案(1) class CQueue { private final Stack<Integer> stack1 = new Stack<>(); private final St...

文章 2022-06-13 来自:开发者社区

「LeetCode」剑指Offer-59-II队列的最大值⚡️

前言️算法,对前端人来说陌生又熟悉,很多时候我们都不会像后端工程师一样重视这项能力。但事实上,算法对每一个程序员来说,都有着不可撼动的地位。因为开发的过程就是把实际问题转换成计算机可识别的指令,也就是《数据结构》里说的,「设计出数据结构,在施加以算法就行了」。当然,学习也是有侧重点的,作为前端我们不需要像后端开发一样对算法全盘掌握,有些比较偏、不实用的类型和解法,只要稍做了解即可。题目剑指 Of....

「LeetCode」剑指Offer-59-II队列的最大值⚡️
文章 2022-06-13 来自:开发者社区

「LeetCode」剑指Offer-09用两个栈实现队列⚡️

前言️算法,对前端人来说陌生又熟悉,很多时候我们都不会像后端工程师一样重视这项能力。但事实上,算法对每一个程序员来说,都有着不可撼动的地位。因为开发的过程就是把实际问题转换成计算机可识别的指令,也就是《数据结构》里说的,「设计出数据结构,在施加以算法就行了」。如今的大环境里,算法已经成为了前端工程师发展路上不可或缺的技能之一。如果我们想未来更上一层楼,不再是只写业务代码的应用工程师,就离不开对算....

「LeetCode」剑指Offer-09用两个栈实现队列⚡️
文章 2022-06-13 来自:开发者社区

【刷穿 LeetCode】剑指 Offer 22. 链表中倒数第k个节点 :「栈/队列」&「差值法」&「快慢指针」

网络异常,图片无法展示|题目描述这是 LeetCode 上的 剑指 Offer 22. 链表中倒数第k个节点 ,难度为 简单。Tag : 「链表」、「栈」、「队列」、「快慢指针」输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。例如,一个链表有 6 个节点,从头节点开始,它们的值依次是 1、2、3、4、5、6。这个链表的倒数第 3....

【刷穿 LeetCode】剑指 Offer 22. 链表中倒数第k个节点 :「栈/队列」&「差值法」&「快慢指针」
文章 2022-02-17 来自:开发者社区

LeetCode 剑指 Offer 09. 用两个栈实现队列

题目 用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead&nbsp;操作返回 -1 ) 示例 1: 输入: ["CQueue","appendTail","deleteHead","deleteHead"] [[],[3],[],[]] 输出:[n...

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

算法编程

开发者社区在线编程频道官方技术圈。包含算法资源更新,周赛动态,每日一题互动。

+关注