zoukankan      html  css  js  c++  java
  • 算法: 包含min函数的栈

    * @Description 包含min函数的栈
    * @问题:定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。
    * @思路:
    1:Stack 类中的pop方法,push方法,peek方法;
    2:min方法,借助迭代器Iterator,stack.iterator(),
    借助方法iterator.hasNext()的while循环,逐个比较iterator.next()和
    package LG.nowcoder;
    
    import java.util.Stack;
    import java.util.Iterator;
    
    /**
     * @Author liguo
     * @Description 包含min函数的栈
     * @问题:定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。
     * @思路: 1:Stack 类中的pop方法,push方法,peek方法;
     * 2:min方法,借助迭代器Iterator,stack.iterator(),
     * 借助方法iterator.hasNext()的while循环,逐个比较iterator.next()和
     * @Data 2018-08-14 14:36
     */
    public class Solution9 {
    
        Stack <Integer> stack = new Stack <Integer>();
    
        public void push(int node) {
            stack.push( node );
        }
    
        public void pop() {
            stack.pop();
        }
    
        public int top() {
            return stack.peek();
        }
    
        public int min() {
            int min = stack.peek();
            int temp = 0;
            Iterator <Integer> iterator = stack.iterator();         
            while (iterator.hasNext()) {                //循环比较大小;
                temp = iterator.next();     
                if (min > temp) {           
                    min = temp;         
                }
            }
            return min;
        }
    }

  • 相关阅读:
    练习_Python3 爬取笔趣阁最新小说章节
    Python3 map()函数
    Java图片验证码生成
    神经网络
    leetcode
    hive开发规范
    北明数科 bug
    JAVA集合~
    令人头痛的JVM
    重定向和管道符
  • 原文地址:https://www.cnblogs.com/liguo-wang/p/9474704.html
Copyright © 2011-2022 走看看