题解 | #【模板】栈#
【模板】栈
https://www.nowcoder.com/practice/104ce248c2f04cfb986b92d0548cccbf
import java.util.ArrayDeque;
import java.util.Deque;
import java.util.Scanner;
public class Main {
private static final String PUSH = "push";
private static final String POP = "pop";
private static final String TOP = "top";
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
final int NUM_OF_OP = in.nextInt();
Deque<Integer> stack = new ArrayDeque<Integer>();
for (int i = 0; i != NUM_OF_OP; ++i) {
final String OP = in.next();
if (OP.equals(PUSH)) {
stack.push(in.nextInt());
} else if (stack.peek() == null) {
System.out.println("error");
} else if (OP.equals(POP)) {
System.out.println(stack.pop());
} else {
System.out.println(stack.peek());
}
}
}
}
查看11道真题和解析