面试题21 包含min函数的栈

题目描述

定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。
 1 class Solution {
 2 public:
 3     void push(int value) {
 4         s.push(value);
 5         if (minmum.empty() || value < minmum.top()){
 6             minmum.push(value);
 7         }
 8         else{
 9             minmum.push(minmum.top());
10         }
11     }
12     void pop() {
13         if (s.size() > 0 && minmum.size() > 0){
14             s.pop();
15             minmum.pop();   
16         }
17     }
18     int top() {
19         return s.top();
20     }
21     int min() {
22         return minmum.top();
23     }
24     stack<int> minmum;
25     stack<int> s;
26 };

 

posted @ 2016-04-04 23:37  早杰  阅读(136)  评论(0编辑  收藏  举报