关注
第一题:新建两个栈用来保存最小最大值就可以啦 package test.wangmei;
import java.util.Scanner;
import java.util.Stack;
class MyStack{
private Stack<Integer> stack;
private Stack<Integer> minStack;
private Stack<Integer> maxStack;
public MyStack() {
stack = new Stack<>();
minStack = new Stack<>();
maxStack = new Stack<>();
}
public void push(int num) {
stack.push(num);
if (minStack.isEmpty() || minStack.peek() >= num)
minStack.push(num);
if (maxStack.isEmpty() || maxStack.peek() <= num)
maxStack.push(num);
}
public int peek() {
return stack.peek();
}
public int pop() {
int num = stack.pop();
if (!minStack.isEmpty() && minStack.peek() == num)
minStack.pop();
if (!maxStack.isEmpty() && maxStack.peek() == num)
maxStack.pop();
return num;
}
public int min() {
return minStack.peek();
}
public int max() {
return maxStack.peek();
}
}
public class Main {
public static void main(String[] args) {
MyStack stack ;
Scanner scanner = new Scanner(System.in);
while (scanner.hasNext()){
stack = new test.wangmei.MyStack();
int n = scanner.nextInt();
for (int i = 0; i < n; i++) {
stack.push(scanner.nextInt());
}
System.out.println(stack.max()+","+stack.min());
}
}
}
查看原帖
点赞 1
相关推荐
点赞 评论 收藏
分享
02-23 16:52
华南理工大学 自然语言处理 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 你感受到金三银四了嘛? #
67016次浏览 596人参与
# 美团笔试 #
691674次浏览 4612人参与
# 虽然0面试,但今天___,夸夸自己 #
8149次浏览 167人参与
# 米哈游笔试 #
547481次浏览 1059人参与
# 春招 / 实习投递,你最焦虑的一件事 #
50888次浏览 999人参与
# vivo笔试 #
12833次浏览 122人参与
# AI岗位暴涨12倍,你会转AI赛道吗? #
4091次浏览 86人参与
# 27届实习投递记录 #
734次浏览 21人参与
# 今天你投了哪些公司? #
133924次浏览 2454人参与
# 运营每日一题 #
127360次浏览 900人参与
# 美团秋招笔试 #
194468次浏览 1065人参与
# AI项目实战 #
5989次浏览 279人参与
# 找工作,你都让AI帮你做什么? #
6303次浏览 207人参与
# 刚工作的你,踩过哪些坑? #
5522次浏览 129人参与
# 金三银四,你的春招进行到哪个阶段了? #
18499次浏览 254人参与
# 软件开发春招备战日记 #
92948次浏览 611人参与
# vivo求职进展汇总 #
277628次浏览 1557人参与
# 联想求职进展汇总 #
338861次浏览 2226人参与
# 第一次找实习,我建议__ #
76075次浏览 855人参与
# 携程笔试 #
122892次浏览 743人参与


查看10道真题和解析