设计getMin功能的栈
程序员文章站
2022-04-10 08:34:13
实现一个特殊功能的栈,在实现栈的基本功能的基础上,再实现返回栈中最小元素的操作。import java.util.*;public class Main { public static void main(String[] args){ Scanner in=new Scanner(System.in); int n=in.nextInt(); Liststack=new LinkedList<>();...
实现一个特殊功能的栈,在实现栈的基本功能的基础上,再实现返回栈中最小元素的操作。
import java.util.*;
public class Main {
public static void main(String[] args){
Scanner in=new Scanner(System.in);
int n=in.nextInt();
List<Integer>stack=new LinkedList<>();
for(int i=1;i<=n;i++){
String str=in.next();
if (("push").equals(str)){
int num=in.nextInt();
stack.add(num);
}
if(("pop").equals(str)){
stack.remove(stack.size()-1);
}
if(("getMin").equals(str)){
int min=Collections.min(stack);
System.out.println(min);
}
}
}
}
由于需要返回栈中最小元素,因此并没有使用Java中的内置Stack,而是采用List集合实现栈,可以直接使用集合Collections.min()函数返回最小值。
本文地址:https://blog.csdn.net/Lily8888888/article/details/109563953