包含min函数的栈
来源:互联网 发布:安广网络电视 编辑:程序博客网 时间:2024/06/07 12:50
题目
定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。
思路
用两个栈,一个栈(st)正常的存储元素,另外一个栈(minStack)存储在对应的层次的时候当前最小的数值。
具体做法,st一直正常的压栈出栈,minStack在压栈的时候判断要压入元素和栈顶元素的大小,如果比栈顶元素小,则压入元素,否则压入栈顶元素,出栈的时候直接出栈顶元素即可。
参考代码
class Solution {public: void push(int value) { if (st.empty()) { minStack.push(value); } else { if (value > minStack.top()) { minStack.push(minStack.top()); } else { minStack.push(value); } } st.push(value); } void pop() { st.pop(); minStack.pop(); } int top() { return st.top(); } int min() { return minStack.top(); }private: stack<int> st; stack<int> minStack;};
阅读全文
0 0
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min 函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- Android Material Design 之 Toolbar
- Struts2.5通配符失效问题的解决
- java连接redis
- Java SSH Web实例
- ubuntu 12.04下搭建web服务器(MySQL+PHP+Apache) 教程
- 包含min函数的栈
- 文章标题
- 特征缩放
- 无线视频监控Mjpg-streamer输入分析
- 使用jconsole监控tomcat jvm的使用情况
- Spring学习之Spring MVC 初探
- python中的文件备份过程
- 文章标题
- ReactNative小小圈数据层设计稿(初稿)