Код 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
- Для каждого числа известно, какое второе нужно.
- Клади в Map уже пройденные числа и их индексы.
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.