首页 > 其他 > 详细

栈————最小栈

时间:2019-06-15 20:04:41      阅读:100      评论:0      收藏:0      [点我收藏+]

技术分享图片

 1 class MinStack {
 2 public:
 3     /** initialize your data structure here. */
 4     MinStack() {
 5         
 6     }
 7     stack<int> s;
 8     void push(int x) {
 9         if(s.empty() || x<=s.top()){
10             s.push(x);
11             s.push(x);
12         }
13         else{
14             int tmp=s.top();
15             s.push(x);
16             s.push(tmp);
17         }   
18     }
19     
20     void pop() {
21         s.pop();
22         s.pop();
23     }
24     
25     int top() {
26         int tmp=s.top();
27         s.pop();
28         int top=s.top();
29         s.push(tmp);
30         return top;
31     }
32     
33     int getMin() {
34         int tmp=s.top();
35         return  tmp;
36     }
37 };
38 
39 /**
40  * Your MinStack object will be instantiated and called as such:
41  * MinStack* obj = new MinStack();
42  * obj->push(x);
43  * obj->pop();
44  * int param_3 = obj->top();
45  * int param_4 = obj->getMin();
46  */

 

栈————最小栈

原文:https://www.cnblogs.com/pacino12134/p/11028527.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!