Ответ
Queue — это абстрактный тип данных (FIFO), где элементы добавляются в конец и удаляются из начала. Основные операции: enqueue (добавить) и dequeue (удалить).
Linked List — это структура данных, состоящая из узлов, где каждый узел содержит данные и ссылку на следующий узел. Поддерживает операции вставки/удаления в любом месте.
Разница:
- Queue — это поведение (интерфейс), а Linked List — реализация (можно использовать для реализации Queue).
- Queue ограничен правилами FIFO, Linked List — гибкая структура.
Пример:
// Queue на Linked List
class Node {
constructor(value) { this.value = value; this.next = null; }
}
class Queue {
constructor() { this.head = null; this.tail = null; }
enqueue(value) {
const node = new Node(value);
if (!this.head) this.head = node;
else this.tail.next = node;
this.tail = node;
}
}