首页 > 代码库 > 举例让抽象问题具体化:包含min函数的栈
举例让抽象问题具体化:包含min函数的栈
定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。在该栈中,调用min、push及pop的时间复杂度都是O(1)。
import java.util.Stack;public class Solution { Stack<Integer> dataStack = new Stack<Integer>(); Stack<Integer> minStack = new Stack<Integer>(); public void push(int node) { Integer temp = new Integer(node); dataStack.push(temp); if (minStack.empty()) { minStack.push(temp); } else { int min = minStack.peek().intValue(); if (node > min) { minStack.push(minStack.peek()); } else { minStack.push(temp); } } } public void pop() { dataStack.pop(); minStack.pop(); } public int top() { return dataStack.peek(); } public int min() { return minStack.peek(); }}
举例让抽象问题具体化:包含min函数的栈
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。