题解 | 【模板】栈的操作
【模板】栈的操作
https://www.nowcoder.com/practice/cdf02ea916454957b575585634e5773a
import java.util.ArrayList;
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
int op_num = in.nextInt();//操作次数
ArrayList list = new ArrayList();//维持一个栈
String str;
int x;
while(op_num-- > 0){
str = in.next();//得到switch的常量
switch(str){
case "push":
x = in.nextInt();
list.add(x);
break;
case "pop":
if(!list.isEmpty()){
list.remove(list.size() - 1);//删除栈顶元素
} else{
System.out.println("Empty");
}
break;
case "query":
if(!list.isEmpty()){
System.out.println(list.get(list.size() - 1));
}else{
System.out.println("Empty");
}
break;
case "size":
System.out.println(list.size());
break;
}
}
}
}
查看11道真题和解析