Sobes.tech
Назад к вопросам
Junior — Middle
65

Какое различие существует между структурой данных 'стэк' и 'очередь'?

Ответ от нейросети

sobes.tech AI

Стэк (stack) и очередь (queue) — это структуры данных с разными принципами работы:

  • Стэк — работает по принципу LIFO (Last In, First Out), то есть последний добавленный элемент извлекается первым. Представьте стопку тарелок: берёшь верхнюю.

  • Очередь — работает по принципу FIFO (First In, First Out), то есть первый добавленный элемент извлекается первым. Аналогия — очередь в магазине: обслуживают по порядку прихода.

Пример на Java:

Stack<Integer> stack = new Stack<>();
stack.push(1);
stack.push(2);
int top = stack.pop(); // вернёт 2

Queue<Integer> queue = new LinkedList<>();
queue.add(1);
queue.add(2);
int first = queue.poll(); // вернёт 1

Таким образом, выбор структуры зависит от задачи: стэк удобен для обратного обхода, очередь — для последовательной обработки.