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

Какие структуры данных можно создать поверх массива

Массивы — это база для многих структур данных. Вот основные:

Стек (LIFO)
Добавление и удаление только с конца.

javascript
const stack = [];
stack.push(1); // [1]
stack.pop();   // []

Очередь (FIFO)
Добавление в конец, удаление из начала (но shift() неэффективен для больших массивов).

javascript
const queue = [];
queue.push(1);  // [1]
queue.shift();  // []

Дек (двусторонняя очередь)
Можно добавлять/удалять с обоих концов (но лучше использовать специальные структуры).

Связный список
Эмулируется через массив объектов с указателями на next/prev, но обычно реализуется отдельно.

Куча (Heap)
Для приоритетных очередей, сортировка при вставке/удалении.

Матрица/Граф
Многомерные массивы или массивы объектов для представления связей.

Хэш-таблица
Через массив + хэш-функцию, но коллизии усложняют реализацию.

Примечание: В JS массивы уже динамические и гибридные (могут работать как хэш-таблицы), но для сложных структур лучше использовать специализированные классы или библиотеки.

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

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

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

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