Код Junior Массивы и хеш-таблицы обновлено

Two Sum

Условие

Верни индексы двух чисел, дающих target. Ответ гарантированно один.

Примеры

twoSum([2, 7, 11, 15], 9) // [0, 1]
twoSum([3, 2, 4], 6) // [1, 2]
twoSum([3, 3], 6) // [0, 1]

Как подойти

Признак: «найти пару с заданной суммой» → Map дополнений. Идём один раз, для nums[i] ищем target-nums[i] среди уже увиденных. O(n)/O(n). Наивный вариант - два вложенных цикла O(n²), назови его вслух и сразу замени.

Подсказки: 2
  1. Для каждого числа известно, какое второе нужно.
  2. Клади в Map уже пройденные числа и их индексы.

Решите в тренажёре

Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.