Min Stack

原创 2015年07月08日 12:33:31
class MinStack {
    Node head;
    public void push(int x) {
        if (head == null) {
            head = new Node(x);
        } else {
            Node temp = new Node(x);
            temp.min = Math.min(head.min, x);
            temp.next = head;
            head = temp;
        }
    }

    public void pop() {
        if (head == null) {
            return;
        } else {
            head = head.next;
        }
    }

    public int top() {
        if (head == null) {
            return Integer.MAX_VALUE;
        } else {
            return head.value;
        }
    }

    public int getMin() {
        if (head == null) {
            return Integer.MAX_VALUE;
        } else {
            return head.min;
        }
    }
}
class Node {
    int value;
    int min;
    Node next;
    Node(int x) {
        value = x;
        min = x;
        next = null;
    }
}

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

相关文章推荐

STACK_MIN.CPP

155. Min Stack

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

[LeetCode]Min Stack,解题报告

目录目录 题目 思路1 AC代码 缺陷 思路2 AC代码题目 Design a stack that supports push, pop, top, and retrieving the min...

LeetCode 155.Min Stack

第155题.Min Stack 问题描述: Design a stack that supports push, pop, top, and retrieving the minimum eleme...

LeetCode Min Stack

LeetCode Min Stack Design a stack that supports push, pop, top, and retrieving the minimum elem...

leetCode Min Stack解题分享

原题:https://oj.leetcode.com/problems/min-stack/ Design a stack that supports push, pop, top, and...

Leetcode-155. Min Stack

前言:为了后续的实习面试,开始疯狂刷题,非常欢迎志同道合的朋友一起交流。因为时间比较紧张,目前的规划是先过一遍,写出能想到的最优算法,第二遍再考虑最优或者较优的方法。如有错误欢迎指正。博主首发CSDN...

栈-Min Stack(实现一个栈,用常数级时间找出栈中的最小值)

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

leetcode--Min Stack

leetcode--Min Stack C++/Java

【栈队列】实现一个栈Stack,要求实现Push(出栈)、Pop(入栈)、Min(返回最小值的操作)的时间复杂度为O(1)

问题分析要记录从当前栈顶到栈底元素的最小值,很容易想到用一个变量,每push一个元素更新一次变量的值。那么问题来了,当执行pop操作时,上一次的最小值就找不到了。解决方法方法1、 使用一个栈。元素x...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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