import java.util.Stack; public class CQueue { Stack<Integer> stack1 = new Stack<>(); Stack<Integer> stack2 = new Stack<>(); public CQueue() { } public ...
分类:
其他好文 时间:
2020-08-07 12:30:51
阅读次数:
63
此博客链接:https://www.cnblogs.com/ping2yingshi/p/13377164.html 题目链接:https://leetcode-cn.com/problems/implement-queue-using-stacks/ 用栈实现队列 使用栈实现队列的下列操作: pu ...
分类:
其他好文 时间:
2020-07-26 00:40:38
阅读次数:
52
lc 剑指 Offer 09. 用两个栈实现队列 题目描述 输入输出描述 思路 1、使用传统的栈Stack即可完成 2、使用Deque数据结构堵住一端(堵住首) (addLast(),removeLast) 或者堵住尾(addFirst();removeFirst) 3、使用Deque数据结构堵住一 ...
分类:
其他好文 时间:
2020-07-20 13:02:17
阅读次数:
66
【题目描述】 用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 ) 示例 1: 输入:["CQueue","appendTail" ...
分类:
其他好文 时间:
2020-07-11 16:54:48
阅读次数:
51
剑指 Offer 09. 用两个栈实现队列 思路 把数据在两个栈中分别“折腾”一次,出来的顺序就是队列的顺序。 向stack1中push数据——向队列中添加数据 从stack2中弹出数据——从队列中删除头部数据 代码 import java.util.Stack; class CQueue { St ...
分类:
其他好文 时间:
2020-07-01 23:43:18
阅读次数:
54
用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 ) 示例: 输入: ["CQueue","appendTail","delete ...
分类:
其他好文 时间:
2020-07-01 22:17:02
阅读次数:
57
剑指 Offer 09. 用两个栈实现队列 题目来源:力扣(LeetCode)https://leetcode-cn.com/problems/yong-liang-ge-zhan-shi-xian-dui-lie-lcof 题目 用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appen ...
分类:
编程语言 时间:
2020-06-30 20:25:53
阅读次数:
64
原题链接 题解 题目的大意就是利用两个栈来模拟队列的插入和删除,最容易想到的就是声明两个栈a, b,a这个栈用来做插入,b用来做删除作用。 当我们数据插入到栈中的,栈中的数据顺序是和删除的顺序相反的,①这就可以利用b这个栈了,将a中的数据弹出,依次压入b中,那么b中就是删除的顺序了。 ②当我们删除的 ...
分类:
其他好文 时间:
2020-06-30 13:16:30
阅读次数:
60
题目: 用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 ) 示例 1: 输入:["CQueue","appendTail","d ...
分类:
编程语言 时间:
2020-06-27 16:00:11
阅读次数:
68
1.要点 使用java的同学请注意,如果你使用Stack的方式来做这道题,会造成速度较慢; 原因的话是Stack继承了Vector接口,而Vector底层是一个Object[]数组,那么就要考虑空间扩容和移位的问题了。 可以使用LinkedList来做Stack的容器,因为LinkedList实现了... ...
分类:
其他好文 时间:
2020-06-26 12:59:54
阅读次数:
64