博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据结构 -- 栈
阅读量:7249 次
发布时间:2019-06-29

本文共 1821 字,大约阅读时间需要 6 分钟。

1. 实现一个栈,可以在最小时间复杂度内计算出栈中的最小值。空间复杂度无视。

package lime.xiaoniu;import java.util.Iterator;import java.util.Stack;/** * 实现一个栈,可以在最小时间复杂度内计算出栈中的最小值。空间复杂度无视。 */public class DevilStack {    public static void main(String[] args){        DevilStack stack = new DevilStack();        for(int i = 10;i > 0;i--){            stack.push((int)(Math.random() * 100));        }        stack.inOrder();        while (!stack.isEmpty()){            System.out.println("mixStackPop : " + stack.peekMixData() + " dataStackPop : " + stack.pop());        }    }    private Stack
dataStack = new Stack
(); private Stack
mixStack = new Stack
(); private Integer mixData = Integer.MAX_VALUE; public boolean push(Integer data){ if(null == data){ return false; } dataStack.push(data); mixStack.push(mixData = Math.min(mixData,data)); return true; } public Integer pop(){ if(dataStack.isEmpty()){ return null; } mixStack.pop(); return dataStack.pop(); } public Integer peekMixData(){ if(dataStack.isEmpty()){ return null; } return mixStack.peek(); } public void inOrder(){ if(dataStack.isEmpty()){ return; } Iterator
iterator = dataStack.iterator(); System.out.print("dataStack : " ); for(;iterator.hasNext();){ System.out.print(iterator.next() + " "); } System.out.print("\nmixStack : "); for(iterator = mixStack.iterator();iterator.hasNext();){ System.out.print(iterator.next() + " "); } System.out.println(); } public boolean isEmpty(){ return dataStack.isEmpty(); }}

啦啦啦

转载地址:http://hzhbm.baihongyu.com/

你可能感兴趣的文章
AjaxControltoolkit(工具包)安装步骤说明
查看>>
利用组策略进行的一次Windows主机安全整改
查看>>
Ruby语法学习笔记(1)
查看>>
Windows Phone 7 使用选择器(Chooser)
查看>>
QOS 之 WRED
查看>>
ASP.NET MVC5 知识点整理
查看>>
CCNP 640-892知识点中文精简解释
查看>>
listview适配器与加载过程详解
查看>>
SDN控制器列表
查看>>
LeetCode - 8. String to Integer (atoi)
查看>>
在两个php下session无法使用的问题
查看>>
说一说关于破解支付宝AR红包的事
查看>>
Oracle DG之--构建Physical Standby(一主库对应多备库)
查看>>
深入学习 Hyper-V 的导出和导入
查看>>
为迎接祖国60华诞,更换博客页面了!!!
查看>>
基于OHCI的USB主机 —— USB设备去的配置描述符
查看>>
IO Foundation 6-解压缩zip文件
查看>>
收件人管理及活动目录集成
查看>>
几个常用的dos命令
查看>>
多态的概念
查看>>