定义栈的数据结构,要求添加一个min函数,能够得到栈的最小元素。
要求函数min、push以及pop的时间复杂度都是O(1)。
#include
#include
#include
typedef struct MinStackElement
{
int data;
int min;
}MinStackElement_T;
typedef struct MinStack...
分类:
其他好文 时间:
2016-05-06 12:53:15
阅读次数:
125
//思路:入栈时不是最小值,永远都没机会成为最小值。import java.util.Stack;class MinStack { private Stack stack = new Stack(); private Stack minStack = new Stack(); p...
分类:
其他好文 时间:
2015-12-20 14:39:10
阅读次数:
114
class MinStack {public: MinStack() { coll.resize(2); } void push(int x) { if(index == coll.size()-1) coll.resize(...
分类:
其他好文 时间:
2015-12-02 16:21:27
阅读次数:
145
MinStakc.cpp#include<iostream>
usingnamespacestd;
#include<stack>
template<classT>
classStack{
public:
voidPush(constT&x){//入栈
_stack.push(x);
if(_minstack.empty())
_minstack.push(x);
else{
_minstack.push((_minstack.top()>x)?x:_mi..
分类:
编程语言 时间:
2015-11-10 16:25:56
阅读次数:
419
Maze.cpp
#define_CRT_SECURE_NO_WARNINGS1
#include<iostream>
#include<stack>
usingnamespacestd;
#defineN10//定义数组大小
structPos{//定义结构体保存路径的坐标
size_t_row;//行
size_t_col;//列
};
stack<Pos>minstack;//定义最短路径栈
voidInitMaz..
分类:
编程语言 时间:
2015-11-03 00:50:07
阅读次数:
223
一开始以为很容易,结果就发现问题了-----如果最小值被删了,岂不是得再次获得最小值???大神之作啊!! 1 class MinStack { 2 private: 3 stack s1; 4 stack s2; 5 public: 6 void push(int x) { ...
分类:
其他好文 时间:
2015-10-24 23:36:17
阅读次数:
224
https://leetcode.com/problems/min-stack/#include #include #include #include using namespace std;class MinStack {public: vector vec; priority_que...
分类:
其他好文 时间:
2015-08-25 19:07:45
阅读次数:
231
我一开始没想太多,觉得把标准库里现有的数据结构拼一下,完全就可以了,这是我的代码:class MinStack {private: multiset sortedElems; list stack;public: void push(int x) { sort...
分类:
其他好文 时间:
2015-08-11 07:14:43
阅读次数:
91
class MinStack {public: void push(int x) { ele.push(x); if(min.empty()||x ele; stack min;};
分类:
其他好文 时间:
2015-07-20 14:21:23
阅读次数:
92
参考feliciafay代码如下:class MinStack {
private:
stack majorStack;
stack minorStack;
public:
void push(int x) {
majorStack.push(x); if(minorStack.empty() == true)...
分类:
其他好文 时间:
2015-07-04 18:30:03
阅读次数:
175