剑指Offer 包含min函数的栈
生活随笔
收集整理的這篇文章主要介紹了
剑指Offer 包含min函数的栈
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
時間限制:1秒?空間限制:32768K?熱度指數:158697 本題知識點:?棧
?算法知識視頻講解
題目描述
定義棧的數據結構,請在該類型中實現一個能夠得到棧最小元素的min函數。 給出代碼: class Solution { public: void push(int value) {} void pop() {} int top() {} int min() {} };
一開始以為要手寫棧,后面發現居然可以調用.....
獲得最小棧的方法是在開始的時候建兩個棧,遇到更小的就入棧,最后返回第二個棧的棧頂就可以了
?
實現代碼:
class Solution { public:stack<int> sta;stack<int> stamin;void push(int value) {sta.push(value);if(stamin.empty()) {stamin.push(value);}else if(stamin.top() > value) {stamin.push(value);}}void pop() {if(stamin.top() == sta.top())stamin.pop();sta.pop();}int top() {return sta.top();}int min() {return stamin.top();} };
?
轉載于:https://www.cnblogs.com/Hyouka/p/9250039.html
總結
以上是生活随笔為你收集整理的剑指Offer 包含min函数的栈的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: nginx basic auth配置踩坑
- 下一篇: consul 1.2 支持service