![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
栈
文章平均质量分 75
剑指Offer中栈的相关题目
little student
目标检测/模型压缩/红外与可见光图像融合
展开
-
LeetCode 第232题 用栈实现队列题(Java解法)- 剑指 Offer 09. 用两个栈实现队列
此时栈的顺序和所需的队列顺序是相反的。(而添加元素的函数是不需要返回值的,所以不会影响输出)。,分别完成在队列尾部插入整数和在队列头部删除整数的功能。”,也就是先来的永远排在最前面,最先出去的也是最先进来的,后来的只能排末尾。队列的声明如下,请实现它的两个函数。两个栈,一个自然的想法是:当需要将元素插入到队尾时,将栈。但是这样繁琐的弹出压入操作,会导致较高的时间消耗。一个更合理的操作时,插入到队尾时,就正常的入栈到。的栈尾,我们需要把这个栈中的元素弹出再压入到。,这样就实现将元素插入到队列的尾部的功能。原创 2022-09-08 11:26:23 · 117 阅读 · 0 评论 -
LeetCode 第155题:最小栈(Java解法)- 剑指 Offer 30. 包含min函数的栈
但是,出栈操作有可能会把最小值弹出,此时就需要更改最小值的数值,那么就需要一个辅助栈来记录每一次入栈操作时的元素最小值。而且在出栈的时候,也需要弹出辅助栈对应的元素。栈的入栈操作示意图如下,可以看到入栈操作使得最后进来的元素放在了栈的最上边,而出口只有上边一个口,所以是“因此一个合理的想法是在入栈操作的时候,就统计栈中的元素最小值。介绍完栈的一些常规操作,再来看看题目中给的示例,可能有些人一开始看不懂输入输出都是什么意思。,而如果是在调用的时候才开始遍历求元素最小值的话,那么时间复杂度是达到了。原创 2022-09-08 10:54:32 · 330 阅读 · 0 评论