Что такое LIFO

«Что такое LIFO» — вопрос из категории Алгоритмы и структуры данных, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

LIFO (Last In, First Out) — принцип обработки данных, при котором последний добавленный элемент извлекается первым.

Пример с Stack в Kotlin:

val stack = Stack<Int>()
stack.push(1) // [1]
stack.push(2) // [1, 2]
stack.push(3) // [1, 2, 3]

val top = stack.pop() // 3 (удалён)
println(stack) // [1, 2]

Где применяется:

  • Навигация (back-stack в Android).
  • Отмена действий (Ctrl+Z).
  • Рекурсивные вызовы (стек вызовов).

⚠️ Stack устарел, вместо него лучше использовать ArrayDeque.