Java: метод компенсации Lifo

Есть ли простое решение для реализации решения LIFO на основе Java?

Например, у меня есть следующее

In (50 150 200) Out (все после всех входов) (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()
                                    }

И так далее, но я не думаю, что это оптимальное решение.

Спасибо заранее,

1 ответ

Объект Deque подразумевается как стек типа LIFO.

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

Он поддерживает как LIFO, так и FIFO реализации.

LIFO будет реализован с помощью методов addFirst(x) и removeFirst().

Другие вопросы по тегам