foundation
Массивы и динамические массивы
Непрерывное хранение, индексация, расширение, стоимость вставок и особенности массивов JavaScript.
Arrays дают indexed access и cache-friendly последовательный проход. Dynamic arrays резервируют capacity и resize при необходимости, поэтому append обычно constant time, но иногда копирует много элементов. JavaScript arrays являются high-level objects, но на интервью все равно рассуждают о стоимости access, scan, insert и delete.
На интервью: Ожидайте задачи на two pointers, prefix sums, in-place mutation, stable order и выбор момента, когда простой scan лучше сложной структуры.
Типовые ошибки: Вставка в начало сдвигает элементы. Sparse JavaScript arrays и mutation во время iteration могут удивить. Уточняйте, sorted ли input, можно ли mutate и бывают ли duplicates.
Чеклист:
- Осознанно используйте indexes.
- Упомяните resize cost для dynamic arrays.
- Уточните правила mutation.
- Проверьте empty и one-element inputs.