Встречается на собеседованиях • сегодня

В чем разница между стеком и очередью

Стек (LIFO - Last In, First Out) и очередь (FIFO - First In, First Out) — это структуры данных с разными принципами доступа к элементам.

Стек:

  • Добавление (push) и удаление (pop) элементов происходит с одного конца (вершины стека).
  • Пример: вызов функций (последняя вызванная функция выполняется первой).
python
stack = []
stack.append(1)  # push
stack.append(2)
top = stack.pop()  # 2

Очередь:

  • Добавление (enqueue) происходит в конец, а удаление (dequeue) — из начала.
  • Пример: очередь задач (первая добавленная задача обрабатывается первой).
python
from collections import deque
queue = deque()
queue.append(1)  # enqueue
queue.append(2)
front = queue.popleft()  # 1

Ключевое отличие: порядок обработки элементов. Стек — обратный порядку добавления, очередь — прямой.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы