码迷,mamicode.com
首页 >  
搜索关键字:用两个栈    ( 343个结果
用两个队列实现栈
题目:用两个队列实现栈。思路:可能看了我的《用两个栈实现队列》的那篇文章后,很多人都会想到“反向的反向等于正向”的思想,但“正向的正向还是正向”,因此我们不能用上篇文章的思想。在这里,我们要开动脑筋,另辟蹊径。设有两个队列q1和q2,我们把它看成一个整体,即从..
分类:其他好文   时间:2014-09-25 17:27:30    阅读次数:162
两个栈实现双端队列
一个笔试题,当时竟然没想出来,现在实现下 1 /* 2 用两个栈实现双端队列 3 栈s1,s2。 4 pushback()和popback(),必须在s2为空的情况,把s2的都放s1中 5 pushfront()和popfront(),必须是在s1为空,把s1的都给放到s2中 6 */ ...
分类:其他好文   时间:2014-09-22 02:10:31    阅读次数:243
用栈实现队列的效果
用两个栈实现队列的效果,可以入栈,出栈,判空等。。。 实现的栈基本功能 lstack.h #ifndef _LSTACK_H #define _LSTACK_H #include using namespace std; // 基于链式表的堆栈 class Stack { public: // 构造过程中初始化为空堆栈 Stack (void) : m_top (NULL) {} /...
分类:其他好文   时间:2014-09-15 22:56:39    阅读次数:481
实现一个队列类,该类用两个栈来实现
1 /* 2 * 实现一个队列类,该类用两个栈来实现 3 * 队列和栈的主要区别是,队列是先进先出,就像我们在食堂[派对打饭一样,先到先打 4 * 栈是先进后出,就像枪里面的子弹,最先进去的把压到了最低 5 * 因此我们只要修改一下peek()和pop(),以相反顺序执行操作,我们可以利用...
分类:其他好文   时间:2014-09-06 12:25:23    阅读次数:142
013使用两个栈实现一个队列(keep it up)
使用两个栈实现一个队列 队列是先进先出的数据结构(FIFO),栈是先进后出的数据结构(FILO),  用两个栈来实现队列的最简单方式是:进入队列则往第一个栈压栈,  出队列则将第一个栈的数据依次压入第二个栈,然后出栈. 两条规则: 1)进队列,则直接压入第一个栈 2)出队列,若果第二个栈不为空,直接pop(),如过第二个栈为空, 则把第一个栈中的数据全部压入第二个栈(第一个栈此时为空...
分类:其他好文   时间:2014-08-27 01:40:37    阅读次数:230
编程之美——队列中取最大值操作
为实现O(1)的时间复杂度完成取队列中最大元素,使用maxStackItemIndex记录队列(使用两个栈实现)中最大元素下标,使用数组link2NextMaxItem[]记录数组中次大值的下标,这也就是使用两个栈(先进后出)模拟队列二不是直接使用队列(先进先出)的原因:先进后出可以保证当执行p.....
分类:其他好文   时间:2014-08-23 13:57:40    阅读次数:205
用两个stack设计一个队列
思路:用两个栈,一个用于接收(in),一个用于输出(out),输出前如果out为空需要将in中的数据导入out。import java.util.Stack;//用两个stack设计一个队列 p142public class MyQueue { Stack in; Stack out; ...
分类:其他好文   时间:2014-08-20 01:22:06    阅读次数:204
【POJ 1028】模拟浏览器
本题要求模拟浏览器的前进、后退等操作。用两个栈实现,一个控制前进,一个控制后退。在前进与后退操作中,从一个栈中弹出栈顶元素,压入另一个栈中。当打开一个新网页时,将前进栈清空。代码如下:#include #include #include #include #include #include #inc...
分类:其他好文   时间:2014-08-06 21:59:02    阅读次数:230
HNU 12817 Shipura(表达式求值)
题目链接:http://acm.hnu.cn/online/?action=problem&type=show&id=12817解题报告:定义两种运算符号,一种是>>,就是右移,另一种是S,S = (X^2) % (1e9+7);跟其它表达式求值一样,用两个栈,一个存操作数,另一个存操作符,有一个问...
分类:其他好文   时间:2014-07-22 22:50:14    阅读次数:261
两个栈实现一个队列
原理: 假设有两个栈分别叫stack1,stack2。那么入队操作就是向stack1中push元素,出队操作就是将stack1中的所有元素pop出来,然后push到stack2中,对stack2进行pop操作。 题目: 题目描述: 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 输入: ...
分类:其他好文   时间:2014-07-21 13:33:06    阅读次数:203
343条   上一页 1 ... 31 32 33 34 35 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!