实现包含min,max,push,pop函数的栈
来源:互联网 发布:自学编程的app 编辑:程序博客网 时间:2024/05/18 00:15
定义辅助栈分别保存最大值、最小值。
import java.util.Scanner;import java.util.Stack;public class Test {public static class myStack { Stack <Integer> dataStk = new Stack<Integer>(); Stack <Integer> minStk = new Stack<Integer>(); Stack <Integer> maxStk = new Stack<Integer>(); public void push(int node) { dataStk.push(node); if(minStk.isEmpty() || minStk.peek()>node){ minStk.push(node); }else{ minStk.push(minStk.peek()); } if(maxStk.isEmpty() || maxStk.peek()<node){ maxStk.push(node); }else{ maxStk.push(maxStk.peek()); } } public void pop() { dataStk.pop(); minStk.pop(); maxStk.pop(); } public int top() { return dataStk.peek(); } public int min() { return minStk.peek(); } public int max() { return maxStk.peek(); }}public static void main(String[] args) {// TODO Auto-generated method stubScanner sc=new Scanner(System.in);int n=sc.nextInt();int arr[]=new int[n];myStack mystk = new myStack();for(int i=0;i<n;i++){arr[i]=sc.nextInt();mystk.push(arr[i]);}mystk.pop();System.out.println(mystk.max()+","+mystk.min());}}
阅读全文
0 0
- 实现包含min,max,push,pop函数的栈
- 设计包含min 函数的栈(push\pop\min)
- 设计包含min函数的栈,要求函数min、push以及pop的时间复杂度都是O(1)
- 带MIN函数的栈实现(push pop min 操作都只花O(1))
- 实现一个包含Min,Max函数的栈
- 栈的pop,min,push
- 包含min、max函数的栈
- 设计一个包含pop,push,min在内的栈,并且各个函数的时间复杂度均为o(1)
- 每天学习一算法系列(3)(设计包含min函数的栈,要求函数min、push以及pop的时间复杂度都是O(1))
- 每天学习一算法系列(3)--设计包含min函数的栈,要求函数min、push以及pop的时间复杂度都是O(1))
- 实现push,pop,max为O(1)的栈
- 实现push,pop,max为O(1)的栈
- 构造栈的数据结构,要求实现min函数,通过min函数取得栈中的最小值。要求PUSH, POP, MIN的时间复杂度为O(1)
- 实现包含min函数的栈
- 包含min函数的栈 java实现
- 包含min函数的栈JAVA实现
- 包含min函数的栈java实现
- 实现pop push min操作时间复杂度为O(1)的栈结构
- flume采集log4j日志到kafka
- 欢迎
- 数值分析定点迭代python3实现加绘图
- 主成分分析对随机变量标准化处理
- 第四周项目3
- 实现包含min,max,push,pop函数的栈
- C语言 数据类型占多少字节,指针占多少字节
- 前端开发是什么以及我们要学习什么
- java集合
- 欢迎使用CSDN-markdown编辑器
- 【MFC】实现 List Control 分页显示数据
- 未来无人超市无人零售系统开发
- qemu源码架构
- Java程序性能优化 读书笔记(二)设计模式:单例模式