Какие знаешь главные функции Stack

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

Ответ

Stack — это структура данных, работающая по принципу LIFO (Last In, First Out). Основные функции:

  • push(item) — добавляет элемент на вершину стека.
  • pop() — удаляет и возвращает верхний элемент. Если стек пуст, может выбросить исключение.
  • peek() (или top()) — возвращает верхний элемент без удаления.
  • isEmpty() — проверяет, пуст ли стек.
  • size() — возвращает количество элементов.

Пример на Kotlin:

val stack = Stack<Int>()
stack.push(1)
stack.push(2)
println(stack.pop()) // 2
println(stack.peek()) // 1
println(stack.isEmpty()) // false

В Android Stack редко используется напрямую, но его логика применяется в навигации (например, back stack у FragmentManager).