Что лучше всего при внедрении Memento pattern (for Undo/Redo)Undo/Redo с использованием Memento: Stack, Queue или просто LinkedList?
в коллекции ведьм, чтобы сохранить память?
В принципе, мне нужно это (C = изменение, и = расстегнуть, г = повтор):
0
*c
-1 0
*c
-2 -1 0
*c
-3 -2 -1 0
<u
-2 -1 0 1
*c
-3 -2 -1 0
Варианты:
- LinkedList - в принципе возможно, может быть, не оптимизирован.
- Очередь - не предназначена для этой задачи, ИМО.
- Стек - не адаптирован для отмены и повторения;
- Двойной стек - возможно, оптимальный, но не может контролировать максимальный размер отмены.
Является ли это домашнее задание? –
нет, это проект. мы реализуем функции отмены/повтора. Немного путают с удобством использования стеков и очередей для этого случая. – serhio