Question:A Slice of an array said to be a Bounded slice if Max(SliceArray)-Min(SliceArray) stack = new LinkedList(); private Deque minStack = new L...
分类:
其他好文 时间:
2015-07-03 01:42:10
阅读次数:
208
1 class MinStack { 2 public: 3 MinStack() { 4 // do initialization if necessary 5 } 6 7 void push(int number) { 8 // wri...
分类:
其他好文 时间:
2015-06-28 16:56:51
阅读次数:
115
构建MinStack,实现一系列操作,包括push,pop,top,minstack(返回栈中最小元素)思路:利用原始栈,不过这里需要两个栈,一个栈mystack用于存储元素,另一个栈otherstack元素由小到大排列关键:mystack进行push(x)时,判断x与mystack的top()元素...
分类:
其他好文 时间:
2015-05-07 23:43:56
阅读次数:
172
设计一个最小堆,要求实现push、pop、top、getMin几个功能。 思路:主要问题在于getMin,必须是一个常数级的查找返回,因此最好是每push一个就和当前min进行比较,始终保存min。 class MinStack {public: MinStack() { head = new Li...
分类:
其他好文 时间:
2015-04-07 13:47:08
阅读次数:
127
思路:
本题目的解法是用到了两个栈,一个用来存元素,另一个用来存最小元素,元素入栈时和minStack栈里面的栈顶元素相比,小于栈顶元素则存入,大于栈顶元素则栈顶元素(当前元素中的最小值)入栈。其中,需要注意的是元素出栈时,要随时更新当前栈中的最小元素min=minStack.top()...
分类:
其他好文 时间:
2015-04-04 21:16:38
阅读次数:
168
Use two stacks :class MinStack {private: stack s, minS;public: void push(int x) { if (minS.empty() || x s;public: void push(int x) { ...
分类:
其他好文 时间:
2015-03-21 08:34:04
阅读次数:
124
老题目。两个栈。class MinStack { stack stk; stack minstk;public: void push(int x) { stk.push(x); if (minstk.empty() || minstk.top() >= ...
分类:
其他好文 时间:
2015-01-01 00:04:51
阅读次数:
179
1 class MinStack { 2 public: 3 void push(int x) { 4 if(values.empty()) 5 { 6 values.push_back(x); 7 min_i...
分类:
其他好文 时间:
2014-12-16 16:40:24
阅读次数:
177
实现O(1)时间取得栈最小值。基本思路是新建一个minstack的栈,维护minstack的从上到下递增序,栈顶位当前stack最小值。当push时比较如果比minstack栈顶小于或等于就push进去,pop的时候如果要pop的元素与minstack栈顶相等从minstack同时pop。class...
分类:
其他好文 时间:
2014-12-14 11:50:46
阅读次数:
147
今天做了一道MinStack的题,深深的感到自己C++还完全没有学好!!!#include #include using std::stack;class MinStack {public: stack st; stack stm; void push(int x) { ...
分类:
其他好文 时间:
2014-12-13 16:30:27
阅读次数:
174