包含MIN函数的栈
来源:互联网 发布:linux卸载软件 yum 编辑:程序博客网 时间:2024/06/05 20:58
定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。
这题的解法比较巧妙,方法是分别用_stack存进数据,_min实时更新最小值,
_stack.pop()的时候如果弹出了一个最小值(也就是弹出值_stack.top()=_min.top()),那么把_min.top()也弹出,
即更新了最小值(回到上一次的最小)
class Solution {public: stack<int> _stack,_min; void push(int value) { _stack.push(value); if(!_min.empty()){ if(value < _min.top()){ _min.push(value); } } else{ _min.push(value); } } void pop() { if(_stack.top() == _min.top()) _min.pop(); _stack.pop(); } int top() { return _stack.top(); } int min() { return _min.top(); }};
阅读全文
0 0
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min 函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 《汇编语言(第3版)》王爽 纠错
- 数据结构_单链表(带头节点)
- 四种字节流复制文件的效率比较
- DirectX 渲染 学习笔记(1)
- SAS宏语句及其功能含义
- 包含MIN函数的栈
- Android将图片保存到本地文件
- 吴恩达深度学习课程第二部分笔记要点
- wireshark使用Tips
- 平安科技2017笔试题目
- TCP协议与UDP协议的区别
- httpclient中get和post的区别
- 函数、方法和接口的区别
- 关于kali无法成功安装vmwaretools的解决办法