题目链接 要实现O(1)的复杂度,所以不能用循环等~只能使用辅助栈 Java 版本: 我的想法: 使用两个栈一个站用于存储入栈的序列,另一个栈存储当前的min值。插入一个就添加一个最小值,删除一个就删除一个最小值。 1 import java.util.Stack; 2 3 public class ...
分类:
其他好文 时间:
2017-04-03 19:04:16
阅读次数:
188
题目描述:用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 解题思路:把stack1作为主栈,每次有新元素入队,先把stack1中所有元素pop到stack2中暂存,再push新元素到stack1,最后把stack2中元素pop到stack1。 代码实现: ...
分类:
其他好文 时间:
2017-03-24 22:53:41
阅读次数:
214
用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 ...
分类:
其他好文 时间:
2017-03-02 15:18:17
阅读次数:
182
使用两个栈Stack1和Stack2来实现一个队列。其中一个栈作为主存放数据的,另外一个栈作为临时存放数据的栈。具体操作如下: enqueue: 栈Stack1的入栈操作。 dequeue:将Stack1中的元素一个一个地全部依次出栈,并且在Stack1出栈的同时把出栈的元素作为参数对Stack2进 ...
分类:
其他好文 时间:
2017-02-07 22:39:51
阅读次数:
213
题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 题目:请实现一个函数,将一个字符串中的空格替换成“%20” 两种方法实现:输入一个链表,从尾到头打印链表每个节点的值 用两个栈 ...
分类:
其他好文 时间:
2016-12-09 22:13:04
阅读次数:
214
栈的特点,就是先进后出。栈可以是链表形式,也可以用数组形式实现。 思考题目的时候,已形成本能,不知道如何总结。反过来想的话,就是问题和数据结构的特性。比如第一题,一个数组三个栈,那么肯定是分割数组了。比如MyQueue这题,因为栈是先进后出,队列是先进先出。题目要求可以用两个栈,那么肯定是可以来回倒 ...
分类:
其他好文 时间:
2016-10-10 16:36:00
阅读次数:
221
希望【题目描述】网页浏览器者有后退与前进按钮,一种实现这两个功能的方式是用两个栈,“前进栈”、“后退栈”。这里你需要实现以下几个功能:BACK: 如果“后退栈”为空则忽略此命令。 否则将当前两面压入“前进栈”,从“后退栈”中取出栈顶页面,并设置为当前页面。FORWARD: 如果“前进栈”为空则忽略此 ...
分类:
其他好文 时间:
2016-10-03 23:34:23
阅读次数:
298
希望【题目描述】网页浏览器者有后退与前进按钮,一种实现这两个功能的方式是用两个栈,“前进栈”、“后退栈”。这里你需要实现以下几个功能:BACK: 如果“后退栈”为空则忽略此命令。 否则将当前两面压入“前进栈”,从“后退栈”中取出栈顶页面,并设置为当前页面。FORWARD: 如果“前进栈”为空则忽略此 ...
分类:
其他好文 时间:
2016-10-03 19:19:59
阅读次数:
129
【题目描述】 网页导航拥有后退与前进按钮,一种实现这两个功能的方式是用两个栈:“前进栈”、“后退栈”。 现需要实现以下几个功能: (1)BACK:如果“后退栈”为空则忽略此命令。 否则将当前两面压入“前进栈”,从“后退栈”中取出栈顶页面,并设置为当前页面; (2)FORWARD:如果“前进栈”为空则 ...
分类:
Web程序 时间:
2016-10-03 15:04:09
阅读次数:
189
一、 用两个栈模拟一个队列 思路一: 1. 一个栈s1作为数据存储,另一个栈s2,作为临时数据存储。 2. 入队时将数据压人s1 3. 出队时将s1弹出,并压人s2,然后弹出s2中的顶部数据,最后再将剩余数据弹出s2,并压人s1. 思路二: 1. 一个栈s1作为数据存储,另一个栈s2,作为临时数据存 ...
分类:
Web程序 时间:
2016-10-01 19:50:36
阅读次数:
241