LeetCode:Min Stack

原创 2015年11月18日 22:08:11

问题描述:

Design a stack that supports push, pop, top, and retrieving the minimum element in constant time.

  • push(x) -- Push element x onto stack.
  • pop() -- Removes the element on top of the stack.
  • top() -- Get the top element.
  • getMin() -- Retrieve the minimum element in the stack.

思路:

刚开始想到的方法是遍历整个栈,将最小值返回,最后想到以前的一道题目和这到题目类似,果断采取了两个栈,一个放最小值。有一个地方是需要特别注意的:

if(stack.peek().equals(minstack.peek()))这里用到了一个函数equals,目的是比较二者大小。

JAVA代码:

class MinStack {
    Stack<Integer> stack = new Stack<>();
    Stack<Integer> minstack = new Stack<>();
    public void push(int x) {
        if(minstack.isEmpty() || x <= minstack.peek())
            minstack.push(x);
        stack.push(x);
    }

    public void pop() {
        if(stack.peek().equals(minstack.peek()))
            minstack.pop();
        stack.pop();
    }

    public int top() {
            return stack.peek();
    }

    public int getMin() {
        return minstack.peek();
        
    }
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

【一天一道LeetCode】#155. Min Stack

一天一道LeetCode 本系列文章已全部上传至我的github,地址:ZeeCoder‘s Github 欢迎大家关注我的新浪微博,我的新浪微博 欢迎转载,转载请注明出处 (一)题目...

LeetCode Min Stack

原题描述: Design a stack that supports push, pop, top, and retrieving the minimum element in consta...

LeetCode(155) Min Stack

题目如下: 分析如下: 我的代码:

leetcode | Min Stack

Min Stack: https://leetcode.com/problems/min-stack/ Design a stack that supports push, pop, top, an...

LeetCode笔记:155. Min Stack

能快速检索最小值的栈

115.[LeetCode] Min Stack

我的代码:public class MinStack { // 栈一般是用 数组,但是数组一般要在构造的时候就声明大小; // 或者使用 node 链表,不过得定义一个 链表结构 ...

[leetcode]Min Stack (获取栈的最小元素C语言实现)

Min Stack Design a stack that supports push, pop, top, and retrieving the minimum element in consta...

【LEETCODE】155-Min Stack

Design a stack that supports push, pop, top, and retrieving the minimum element in constant time. ...

<LeetCode OJ> 155. Min Stack

155. Min Stack My Submissions Question Total Accepted: 55516 Total Submissions: 263927 Difficult...

[LeetCode]Min Stack,解题报告

目录目录 题目 思路1 AC代码 缺陷 思路2 AC代码题目 Design a stack that supports push, pop, top, and retrieving the min...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:LeetCode:Min Stack
举报原因:
原因补充:

(最多只允许输入30个字)