包含min函数的栈
来源:互联网 发布:维密摔倒后果 知乎 编辑:程序博客网 时间:2024/06/05 00:36
#include <iostream>#include <stack>#include <assert.h>using namespace std;template<typename T>class StackWithMin{public: void Push(T& val); void Pop(); T min();private: stack<T> s_data; stack<T> s_min;};template<typename T>void StackWithMin<T>::Push(T& val){ s_data.push(val); if(s_min.size()==0||s_min.top()>val) s_min.push(val); else s_min.push(s_min.top());}template<typename T>void StackWithMin<T>::Pop(){ assert(s_data.size()>0&&s_min.size()>0); s_data.pop(); s_min.pop();}template<typename T>T StackWithMin<T>::min(){ assert(s_data.size()>0&&s_min.size()>0); return s_min.top();}int main(){ StackWithMin<int> sw; int val,n; cin>>n; while(n--) { cin>>val; sw.Push(val); } cout<<sw.min()<<endl; return 0;}
阅读全文
0 0
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min 函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- Android 开发者的 RxJava 学习一,走进RxJava
- 如何避免shell脚本被同时运行多次
- 程序员这样优化简历,已投制胜
- Java-第6章 访问权限控制
- testadsf
- 包含min函数的栈
- Mac 获取设备型号/版本
- Harris 角点检测算法原理
- 前端人员必须了解的各种浏览器
- The Swift Programming Language
- 【数据结构】环形缓冲区/循环队列 C语言实现
- Anaconda使用
- IntelliJ IDEA 2017版 创建 hello world Java web Maven项目
- Android EditText键盘类型