包含min函数的栈

来源:互联网 发布:编程一小时网站 编辑:程序博客网 时间:2024/06/06 19:33

包含min函数的栈

  • 时间限制:1秒
  • 空间限制:32768K
  • 本题知识点: 栈

题目描述

定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。

牛客网题目链接:点击这里

VS2010调试代码:

说明:不明白题目,看了答案

#include<stack>using namespace std;#define MIN(a,b) ((a)<(b)? (a):(b))class Solution {    stack< pair<int,int> >  s;public:    void push(int value) {        s.push(pair<int,int>(value, s.empty()? value:MIN(value,min())));    }    void pop() {        s.pop();    }    int top() {       return s.top().first;    }    int min() {        return s.top().second;    }};

发现几点:
1. 可以在OJ的头处添加 #define预定义
2. 自己可以添加数据类 stack
3. 学习 pair类 的使用。

牛客网通过图片:

这里写图片描述

0 0
原创粉丝点击