設計乙個支援 push,pop,top 操作,並能在常數時間內檢索到最小元素的棧。示例:
minstack minstack = new minstack();minstack.push(-2);
minstack.push(0);
minstack.push(-3);
minstack.getmin(); --> 返回 -3.
minstack.pop();
minstack.top(); --> 返回 0.
minstack.getmin(); --> 返回 -2.
js中可以用陣列實現棧,定義兩個陣列,乙個正常進行push和pop的操作,另乙個儲存當前棧中的最小值
/** * initialize your data structure here. */
var minstack = function
() ;
/**
* @param x
* @return */
minstack.prototype.push = function
(x)
};/*
* * @return */
minstack.prototype.pop = function
()
this
.stack.pop();
};/*
* * @return */
minstack.prototype.top = function
() ;/**
* @return */
minstack.prototype.getmin = function
() ;
/**
* your minstack object will be instantiated and called as such:
* var obj = new minstack()
* obj.push(x)
* obj.pop()
* var param_3 = obj.top()
* var param_4 = obj.getmin()
*/
155 最小棧(JS實現)
設計乙個支援 push pop top 操作,並能在常數時間內檢索到最小元素的棧。push x 將元素 x 推入棧中。pop 刪除棧頂的元素。top 獲取棧頂元素。getmin 檢索棧中的最小元素。示例 輸入 minstack push push push getmin pop top getmin...
最小棧實現
最小棧實現 設計乙個支援 push,pop,top 操作,並能在常數時間內檢索到最小元素的棧。push x 將元素 x 推入棧中。pop 刪除棧頂的元素。top 獲取棧頂元素。getmin 檢索棧中的最小元素。public class minstack public void push int x ...
實現最小棧
class minstack stack stack new stack stack minstack new stack int stack new int 40 int i 0 int minstack new int 40 int j 0 入棧 對兩個棧都要入棧 每次放入之前需要看最小棧 的棧...