题目:
输入两个整数序列,第一个序列表示栈的压入顺序,判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。
思路:
引入辅助栈
代码实现:
import java.util.Stack; public class Nineteenth { //引入辅助栈 public static boolean judge(int[] arr1, int[] arr2){ if(arr1.length != arr2.length){ return false; } Stack<Integer> stack = new Stack<>(); for(int i = 0; i < arr1.length; i ++){ stack.push(arr1[i]); } for(int i = 0; i < arr2.length; i ++){ if(arr2[i] != stack.pop()){ return false; } } return true; } public static void main(String[] args){ int[] arr1 = {1,2,3,4,5,6,7}; int[] arr2 = {7,6,5,4,3,2,1}; System.out.println(judge(arr1, arr2)); } }