Вопрос проверяет понимание базовых структур данных: стека (LIFO) и очереди (FIFO), их отличий и областей применения.
Стек (stack) и очередь (queue) — это фундаментальные структуры данных, которые отличаются порядком добавления и удаления элементов. Стек следует принципу LIFO (Last In, First Out), то есть последний добавленный элемент будет удалён первым. Очередь следует принципу FIFO (First In, First Out), где первый добавленный элемент удаляется первым.
Стек можно реализовать с помощью массива, используя методы push и pop:
const stack = [];
stack.push(1); // [1]
stack.push(2); // [1, 2]
stack.pop(); // возвращает 2, стек [1]Очередь можно реализовать с помощью массива, используя push и shift:
const queue = [];
queue.push(1); // [1]
queue.push(2); // [1, 2]
queue.shift(); // возвращает 1, очередь [2]Вывод: Выбор между стеком и очередью зависит от требуемого порядка обработки данных. Стек подходит для сценариев, где нужен доступ к последнему элементу, а очередь — для последовательной обработки в порядке поступления.
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию