住栈的特性:对于取出栈内元素每次只能从栈顶开始取(后进先出(栈满时,只能先出后进)) 由于栈内只能容纳4个元素: 所以 E F不可能第一个出栈: 当栈内少于四个元素时 既可以选择进栈,也可以选择出栈 所以 A B C D中 第一个出栈的元素是随机的,主要要从第二个开始看: 当D第一个出栈时,说明栈内现在还剩 A B C,要么E进栈 要么C出栈: 如果E进栈 栈内满4个元素,栈顶元素E出栈 此时又开始判断,是站定元素出栈还是 栈外元素进栈呢, 一次类推. 主要考察逻辑思考和判断的能力. 最好在做的…
直接上代码: class ArrayStack{ //用数组模拟栈 int maxSize; int[] stack; int top = -1;//表示栈顶 public ArrayStack(int maxSize) { this.maxSize = maxSize; this.stack = new int[maxSize]; } //1, 入栈 public void pushStack(int value){ //判断是否满 if(IsFull()){ System.out.print…