包含min函数的栈
2016-08-01 19:48
211 查看
题目描述:
定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。
解题思路:
1.建立两个栈,栈date存储未处理的元素。
2.将栈date的栈顶元素和下一个元素相比,当栈顶元素较小时,栈顶元素入min栈。
实际操作:
定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。
解题思路:
1.建立两个栈,栈date存储未处理的元素。
2.将栈date的栈顶元素和下一个元素相比,当栈顶元素较小时,栈顶元素入min栈。
实际操作:
Stack<Integer> date=new Stack<>(); Stack<Integer> min = new Stack<>(); public void push(int node) { //将元素压入存储栈 date.push(node); //min栈,首个入栈元素一定最小 if (min.isEmpty()) min.push(node); //当元素小于栈顶元素时,入栈 if (node < min.peek()) min.push(node); else min.push(min.peek()); } public void pop() { if (!date.isEmpty()) {date.pop();min.pop();} } public int top() { return date.peek(); } public int min() { if (min.isEmpty()) return 0; return min.peek(); }
相关文章推荐
- 【微软100面试题实现】第02题:设计包含min函数的栈
- 剑指offer系列源码-包含min函数的栈
- 【剑指offer】包含min函数的栈
- (二)设计包含min函数的栈
- 设计包含min函数的栈
- 设计包含min函数的栈
- 包含min函数的栈
- 剑指offer-----包含min函数的栈
- 【剑指**】30.包含min函数的栈
- 剑指offer-第四章解决面试题的思路(包含min函数的栈)
- 包含min函数的栈
- (剑指offer)包含min函数的栈
- 30、包含min函数的栈
- 剑指offer-面试题21-包含min函数的栈
- 包含min函数的栈
- leetcode解题之155# Min Stack Java版 (包含min函数的栈)
- 包含MIN函数的栈+一个数组实现两个堆栈+两个数组实现MIN栈
- 包含min函数的栈
- 包含min函数的栈
- 《剑指Offer》 包含min函数的栈