栈和队列的面试题Java实现二、栈和队列:面试的时候,栈和队列经常会成对出现来考察。本文包含栈和队列的如下考试内容: (1)栈的创建 (2)队列的创建 (3)两个栈实现一个队列 (4)两个队列实现一个栈 (5)设计含最小函数min()的栈,要求min、push、pop、的时间复杂度都是O(...
分类:
编程语言 时间:
2015-09-09 22:54:05
阅读次数:
373
题目描述定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。分析:使用两个栈,一个正常存取元素,一个栈用来存储最小的元素,代码如下: 1 import java.util.Stack; 2 3 public class Solution { 4 5 Stack s1...
分类:
其他好文 时间:
2015-09-03 11:35:19
阅读次数:
133
两个栈实现一个队列import java.util.Stack;public class Demo07 {
Stack stack1 = new Stack();
Stack stack2 = new Stack(); public void push(int node) {
stack1....
分类:
编程语言 时间:
2015-09-02 11:59:00
阅读次数:
210
相关题目:《剑指offer》面试题7templateclass Queue { public: Queue(); ~Queue(); void Push(const T& value) { s1.push(value): } void...
分类:
编程语言 时间:
2015-09-01 16:45:15
阅读次数:
160
#include
#include
using namespace std;template
class QUEUE
{
public:
QUEUE(){}
~QUEUE(){}
void APPEND(const T val)
{
while(st2.empty()==false)...
分类:
其他好文 时间:
2015-09-01 01:45:14
阅读次数:
173
#include
#include
using namespace std;template
class Min
{
public:
void PUSH(T val)
{
T temp = val;
st1.push(val);
if (st2.empty() == true...
分类:
其他好文 时间:
2015-08-31 21:47:36
阅读次数:
181
用两个栈实现队列 题目描述:
??用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。
解题思路:
??利用一个栈来作为暂时存储的栈,类似于汉诺塔问题,可以根据下图思考一下,
我的Java源代码: import java.util.Stack;
public class Solution {
Stack stack1 = new...
分类:
其他好文 时间:
2015-08-29 00:52:17
阅读次数:
135
思路1:要求的是两个链表的第一个公共节点,首先想到的是用栈来存放两个链表,然后依次从栈中抛出,直到最后一个相同的节点为止。但是要用到两个栈,空间复杂度为O(n);思路2:从头到尾分别遍历两个链表得到链表的长度风别为,len1和len2,求出两者的差值dif,然后现在长的链表上面走dif步,然后同步走...
分类:
其他好文 时间:
2015-08-28 17:32:30
阅读次数:
153
用两个栈实现一个队列。队列的声明如下,请实现他的两个函数appendTail和deleteHead,分别完成在队列尾部插入结点和在队列头部删除结点的功能。
/**
*题目:用两个栈实现一个队列。队列的声明如下,请实现他的两个函数appendTail和deleteHead,分别完成在队列尾部插入结点和在队列头部删除结点的功能。
*时间:2015年8月27日09:52:06
*文件...
分类:
其他好文 时间:
2015-08-27 15:19:07
阅读次数:
136
用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。好像第二种更好一点,毕竟push操作的频率高于pop。 1 class Solution 2 { 3 public: 4 void push(int node) { 5 if(stack1.e...
分类:
其他好文 时间:
2015-08-25 18:25:57
阅读次数:
115