[Java] 纯文本查看 复制代码 import java.util.*;
public class StackSequence {
public static void main(String[] args) {
int[] pushSequence = {1, 2, 3, 4, 5}; // 入栈序列
int[] popSequence = {4, 5, 3, 2, 1}; // 出栈序列
boolean isPossible = checkStackSequence(pushSequence, popSequence);
System.out.println(isPossible); // 输出 true
}
public static boolean checkStackSequence(int[] pushSequence, int[] popSequence) {
Stack<Integer> stack = new Stack<>();
int i = 0;
for (int num : pushSequence) {
stack.push(num); // 入栈
while (!stack.isEmpty() && stack.peek() == popSequence[i]) {
stack.pop(); // 出栈
i++;
}
}
return stack.isEmpty(); // 如果栈为空,则出栈序列可行
}
}
|