包含min函数的栈
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了包含min函数的栈相关的知识,希望对你有一定的参考价值。
题目描述
定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。
public class Solution { Stack<Integer> data = new Stack<>(); Stack<Integer> min = new Stack<>(); Integer tmp = null; public void push(int node) { if(tmp!=null){ if(node<=tmp){ tmp = node; min.push(node); } data.push(node); }else{ min.push(node); tmp = node; data.push(node); } } public void pop() { int num = data.pop(); int num2 = min.pop(); if(num!=num2){ min.push(num2); } } public int top() { int num = data.pop(); data.push(num); return num; } public int min() { int num = min.pop(); min.push(num); return num; } }
以上是关于包含min函数的栈的主要内容,如果未能解决你的问题,请参考以下文章