[剑指Offer]9-用两个栈实现队列
题目链接
题意
用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。
解题思路
画图理解。
待做
用两个队列可实现栈。
代码
class Solution
{
public:
	void push(int node) {
		stack1.push(node);
	}
	int pop() {
		if (stack2.empty()) {
			while (!stack1.empty()) {
				int temp = stack1.top();
				stack1.pop();
				stack2.push(temp);
			}
		}
		if (stack2.empty()) {
			throw "the queue is empty!";
		}
		int  node = stack2.top();
		stack2.pop();
		return node;
	}
private:
	stack<int> stack1;
	stack<int> stack2;
};
[剑指Offer]9-用两个栈实现队列的更多相关文章
- 《剑指offer》用两个栈实现队列
		本题来自<剑指offer> 用两个栈实现队列 题目: 用两个栈来实现一个队列,完成队列的Push和Pop操作. 队列中的元素为int类型. 思路: 队列定义:先进先出 栈定义:先进后出 要 ... 
- 剑指 Offer 09. 用两个栈实现队列
		剑指 Offer 09. 用两个栈实现队列 用两个栈实现一个队列.队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的 ... 
- [Leetcode]225. 用队列实现栈 、剑指 Offer 09. 用两个栈实现队列
		##225. 用队列实现栈 如题 ###题解 在push时候搞点事情:push时入队1,在把队2的元素一个个入队1,再交换队2和队1,保持队1除pushguocheng 始终为空. ###代码 cla ... 
- 剑指 Offer 09. 用两个栈实现队列 +java中栈和队列的使用
		剑指 Offer 09. 用两个栈实现队列 题目链接 class CQueue { private Stack<Integer> sta1; private Stack<Intege ... 
- 力扣 - 剑指 Offer 09. 用两个栈实现队列
		目录 题目 思路 代码 复杂度分析 题目 剑指 Offer 09. 用两个栈实现队列 思路 刚开始想的是用stack1作为数据存储的地方,stack2用来作为辅助栈,如果添加元素直接push入stac ... 
- 菜鸟刷题路:剑指 Offer 09. 用两个栈实现队列
		剑指 Offer 09. 用两个栈实现队列 用两个栈实现一个队列.队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的 ... 
- 【Java】 剑指offer(8) 用两个栈实现队列
		本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集 题目 用两个栈实现一个队列.队列的声明如下,请实现它的两个函数append ... 
- [剑指offer]09用两个栈实现队列插入和删除操作,C++实现
		原创博文,转载请注明出处! # 本文为牛客网<剑指offer>刷题笔记 1.题目 # 用两个栈实现队列的插入和删除操作 2.思路 栈服从先入后出的原则处理数据,队列服从先入先出的原则处理数 ... 
- Go语言实现:【剑指offer】用两个栈实现队列
		该题目来源于牛客网<剑指offer>专题. 用两个栈来实现一个队列,完成队列的Push和Pop操作. 队列中的元素为int类型. Go语言实现: var list1 = list.New( ... 
- 剑指OFFER之用两个栈实现队列(九度OJ1512)
		题目描述: 用两个栈来实现一个队列,完成队列的Push和Pop操作.队列中的元素为int类型. 输入: 每个输入文件包含一个测试样例.对于每个测试样例,第一行输入一个n(1<=n<=100 ... 
随机推荐
- Props文件属性读取
			Properties props=new Properties(); try { props.load(new InputStreamReader(getClass().getResourceAsSt ... 
- Leetcode 题解  Longest Substring Without Repeating Characters_需要重做
			最长的没有重复的字符串. 这个题其实不难.但是我第二次做了,硬是把它做出了难的感觉... 变量命名要合理.可读性强. 
- iframe+form表单提交数据
			<h6>基于iframe+Form表单</h6> <iframe id="iframe" name="ifra" onclick= ... 
- vue:在router里面给页面加title
			vue中给组件页面加页面标题:{ path: '/', name: 'index', component: disconnect, meta: { title: '首页' } }, { path: ' ... 
- setitimer函数
			和alarm函数类似,都用于定时操作: 函数原型:int setitimer(int which, const struct itimerval *new_value, struct itimerva ... 
- vue项目bug-Couldn’t find preset "es2015"
			在使用vue项目的时候安装了其他的插件,发现会报错 Couldn’t find preset "es2015".是因引用的插件使用了es标准,解决办法如下 npm install ... 
- 解决eclipse+adt出现的 loading data for android 问题
			因为公司最近做的项目中有用到一些第三方demo,蛋疼的是这些demo还比较旧...eclipse的... 于是给自己的eclipse装上了ADT插件,但是...因为我的eclipse比较新,Versi ... 
- elastastic search
			curl -X PUT "10.97.184.40:9200/logstash-2015.05.18" -H 'Content-Type: application/json' -d ... 
- Ubuntu下安装、激活并配置Pycharm
			Ubuntu下安装.激活并配置Pycharm 最近在学习Python这门语言,到了需要Python编译器学习的阶段,通过网上了解各个Python编译器的优缺点,最后选择了pycharm作为Python ... 
- 微信小程序实现滚动分页加载更多
			参考网址:https://www.cnblogs.com/Smiled/p/8203306.html 1.wxml: <view class='myScroll' style='float:le ... 
