zoukankan      html  css  js  c++  java
  • JZ020包含 min 函数的栈

    包含 min 函数的栈

    题目描述

    定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。

    题目链接: 包含 min 函数的栈

    代码

    import java.util.Stack;
    
    /**
     * 标题:包含 min 函数的栈
     * 题目描述
     * 定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。
     * 题目链接:
     * https://www.nowcoder.com/practice/4c776177d2c04c2494f2555c9fcc1e49?tpId=13&&tqId=11173&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking
     */
    public class Jz20 {
    
        private Stack<Integer> datas = new Stack<Integer>();
        private Stack<Integer> minDatas = new Stack<Integer>();
    
        public void push(int node) {
            datas.push(node);
            if (minDatas.isEmpty()) {
                minDatas.push(node);
            } else if (node <= minDatas.peek()) {
                minDatas.push(node);
            }
        }
    
        public void pop() {
            int popData = datas.pop();
            if (popData == minDatas.peek()) {
                minDatas.pop();
            }
        }
    
        public int top() {
            return datas.peek();
        }
    
        public int min() {
            return minDatas.peek();
        }
    }
    

    【每日寄语】 看似不起眼的日复一日,会在将来的某一天,突然让你看到坚持的意义。

  • 相关阅读:
    音频处理之回声消除及调试经验
    音频软件开发中的debug方法和工具
    ZJOI2015地震后的幻想乡
    HEOI2015小L的白日梦
    THUWC2017随机二分图
    PKUWC Slay The Spire
    dp的一些计划
    鸡汤征集贴
    弱菜的各种模板
    洛谷P4902乘积
  • 原文地址:https://www.cnblogs.com/kaesar/p/15665182.html
Copyright © 2011-2022 走看看