您的位置:首页 > Web前端

剑指offer--包含min函数的栈

2017-08-07 16:35 302 查看


题目描述

定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。

分类:栈

解法1:利用两个栈,一个存储最小元素,每次新增一个元素的时候,就要更新最小元素栈

[java] view
plain copy

import java.util.Stack;  

  

public class Solution {  

  

      

    Stack<Integer> stack1 = new Stack<Integer>();  

    Stack<Integer> stack2 = new Stack<Integer>();  

      

    public void push(int node) {  

        stack1.add(node);  

        if(stack2.size()==0){  

            stack2.add(node);  

        }else{  

            int min = stack2.peek();  

            if(min>node){  

                stack2.add(node);  

            }else{  

                stack2.add(min);  

            }  

        }  

    }  

      

    public void pop() {  

        stack1.pop();  

        stack2.pop();  

    }  

      

    public int top() {  

        return stack1.peek();  

    }  

      

    public int min() {  

        return stack2.peek();  

    }  

}  

原文链接  http://blog.csdn.net/crazy__chen/article/details/44997887
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: