Функция очистки массива от повторяющихся элементов

Для целых чисел используйте Set и верните [...new Set(values)]. Каждый различный элемент останется один раз, в порядке первого появления.

Короткий ответ

Что ответить на собеседовании

Для целых чисел используйте Set и верните [...new Set(values)]. Каждый различный элемент останется один раз, в порядке первого появления.

Подробный разбор

Ответ с пояснениями

Условие

Дан список целых чисел. Требуется реализовать функцию, которая удаляет все повторяющиеся значения, оставляя каждый элемент только один раз. При этом алгоритм должен работать за линейное время O(n).

Ответ

Для целых чисел используйте Set и верните [...new Set(values)]. Каждый различный элемент останется один раз, в порядке первого появления.

function uniqueIntegers(values) {
  return [...new Set(values)];
}

В типичной хеш-реализации это ожидаемые O(n) времени и O(n) памяти. Стандарт JavaScript не обещает строгую worst-case O(1) для каждой операции Set, поэтому абсолютная линейная гарантия зависит от модели вычислений.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее