【剑指offer】包含min函数的栈
来源:互联网 发布:淘宝为什么得2张银行卡 编辑:程序博客网 时间:2024/05/14 05:59
题目:
定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。
分析:
定义一个的栈用于保存最小值,
每次进栈一个元素就与当前最小值比较,判断是进栈最小值还是当前值,用以保证栈中每个位置对应的都是数据栈数据对应的最小值;
出栈时,数据栈与最小值栈都出栈一个元素,用以保证数据栈与最小值栈最小值的统一。
实现:
import java.util.Stack;public class Program_21 {Stack<Integer> data_s = new Stack<Integer>();// 保存元素数据Stack<Integer> min_s = new Stack<Integer>();// 保存最小值public void push(int node) {data_s.push(node);if (min_s.size() == 0 || node < top()) {min_s.push(node);} else {min_s.push(top());}}public void pop() {if (data_s.size() != 0 && min_s.size() != 0) {data_s.pop();min_s.pop();}}public int top() {if (min_s.size() == 0) {return -1;}return min_s.peek();}public int min() {if (min_s.size() != 0) {return top();}return -1;}}
0 0
- 【剑指offer】包含min函数的栈
- 剑指offer--包含min函数的栈
- 剑指Offer-->包含min函数的栈
- 《剑指offer》包含min函数的栈
- 剑指offer - 包含min函数的栈
- 剑指offer-包含min函数的栈
- 剑指offer:包含min函数的栈
- 包含min函数的栈|剑指offer
- 剑指offer-包含min函数的栈
- 剑指offer 包含min函数的栈
- 剑指offer:包含min函数的栈
- 剑指offer 包含min函数的栈
- [剑指offer]包含min函数的栈
- 《剑指offer》-包含min函数的栈
- 剑指offer----包含min函数的栈
- 【剑指offer】包含min函数的栈
- 剑指offer|包含min函数的栈
- 《剑指offer》包含min函数的栈
- getWidth()和getMeasuredWidth()
- Bugzilla安装过程
- 数据结构 -- 简单体会
- Oracle查看会话剩余时间
- mpc8260 1
- 【剑指offer】包含min函数的栈
- jquery $.type来实现类型判断
- Android 自定义组合布局
- sizeof的用法及与strlen的比较
- 日常小结-XmlDTD约束
- Spring中的线程池ThreadPoolTaskExecutor
- 音视频同步系列文章之------基于时间戳的同步点
- 003——filter粗粒度权限控制
- javaweb网站开发模板化设计