0

是否有一个简单的解决方案来实现基于 Java 的 LIFO 解决方案?

例如我有以下

输入(50,150,200)输出(所有输入之后)(250,80)

结果应该是这样的:

初始 - 最终 200 - 200 200 - 50 150 - 80 150 - 20 50 - 50(剩余)

提前谢谢了,

我想到了LinkedList:

 if (outList.getFirst()>inList.getLast()){
                                        def pieces = outList.getFirst()-inList.getLast()
                                        valoreFinal.add(inList.getLast())
                                        valoreInitial.add(inList.getLast())
                                        iList.removeLast()
                                    }

依此类推,但我不认为这是最佳解决方案。

提前谢谢了,

4

1 回答 1

0

Deque 对象是一个 LIFO 类型的 Stack。

https://docs.oracle.com/javase/7/docs/api/java/util/Deque.html

它支持 LIFO 和 FIFO 实现。

LIFO 将使用 addFirst(x) 和 removeFirst() 方法实现。

于 2017-03-14T21:22:42.197 回答