Це питання натхнене існуючим питанням про те, чи можна моделювати стек, використовуючи дві черги з амортизованим часом за операцію стека. Відповідь, здається, невідома. Ось більш конкретне запитання, відповідне окремому випадку, коли перші операції PUSH виконуються спочатку, а потім усі операції POP. Наскільки ефективно можна повернути список елементів за допомогою двох спочатку порожніх черг? Юридичні операції:
- Запишіть наступний елемент із списку введення (до хвоста будь-якої черги).
- Видаліть елемент на чолі будь-якої черги та знову заставте його (до хвоста будь-якої черги).
- Видаліть елемент на чолі будь-якої черги та додайте його до списку вихідних даних.
Якщо вхідний список складається з елементів , то як складається мінімальна кількість операцій, необхідних для генерування списку зворотного виходу поводитись? Доказ того, що він росте швидше, ніж був би особливо цікавим, оскільки він вирішив би початкове питання негативно.
Оновлення (15 січня 2011 р.): Проблему можна вирішити в , як показано у поданих відповідях та їх коментарях; а нижня межа тривіальна. Чи можна покращити будь-який з цих меж?