【发布时间】:2018-06-14 21:35:12
【问题描述】:
对于这个简单的问题,我需要按顺序查找 stack1 的值(如果有)。说到堆栈,原则是LIFO(后进先出)或FILO(先进后出)。使用堆栈的原因是为了反转数据,并以相反的顺序显示。
Stack<Integer> stack1 = new Stack<Integer>();
stack1.push (2);
stack1.push(5);
stack1.push (stack1.pop() - stack1.pop());
stack1.push(8);
上面的问题让我想到,如果我们用这个原理,答案应该是:8,3,5,2。
8 是最后一个值作为开始,然后下一个值是 3,取 5 和 2(“pop”是“head”处的删除)。然后接下来的两个值是 5 和 2。这是正确的答案,还是我得到了错误的答案?
【问题讨论】:
标签: stack