155 最小棧 C 實現

2021-10-08 00:13:32 字數 1239 閱讀 3673

設計乙個支援 push ,pop ,top 操作,並能在常數時間內檢索到最小元素的棧。

push(x) —— 將元素 x 推入棧中。

pop() —— 刪除棧頂的元素。

top() —— 獲取棧頂元素。

getmin() —— 檢索棧中的最小元素。

示例:輸入:

["minstack","push","push","push","getmin","pop","top","getmin"]

[,[-2],[0],[-3],,,,]

輸出:[null,null,null,null,-3,null,0,-2]

解釋:minstack minstack = new minstack();

minstack.push(-2);

minstack.push(0);

minstack.push(-3);

minstack.getmin();   --> 返回 -3.

minstack.pop();

minstack.top();      --> 返回 0.

minstack.getmin();   --> 返回 -2.

pop、top 和 getmin 操作總是在 非空棧 上呼叫。

class minstack 

void push(int x) else

data.push(x);

mindata.push(min);

}void pop()

if(data.size() != 0)

}int top() else return null;

}int getmin() else return null;

}//使用兩個棧實現這個

//1個用來存放正常壓入的資料

//另乙個用來存放棧最小值

stackdata;

stackmindata;

int min;

};/**

* your minstack object will be instantiated and called as such:

* minstack* obj = new minstack();

* obj->push(x);

* obj->pop();

* int param_3 = obj->top();

* int param_4 = obj->getmin();

*/

155實現最小棧

題意 設計乙個支援 push,pop,top 操作,並能在常數時間內檢索到最小元素的棧。push x 將元素 x 推入棧中。pop 刪除棧頂的元素。top 獲取棧頂元素。getmin 檢索棧中的最小元素。方法一 使用輔助棧class minstack def init self self.stack...

155 最小棧(JS實現)

設計乙個支援 push pop top 操作,並能在常數時間內檢索到最小元素的棧。push x 將元素 x 推入棧中。pop 刪除棧頂的元素。top 獲取棧頂元素。getmin 檢索棧中的最小元素。示例 輸入 minstack push push push getmin pop top getmin...

leetcode 155 最小棧 c 實現

設計乙個支援 push pop top 操作,並能在常數時間內檢索到最小元素的棧。輸入 minstack push push push getmin pop top getmin 2 0 3 輸出 null,null,null,null,3,null,0,2 解釋 minstack minstack...