Задать вопрос
@campus1

Как можно упростить код?

Привет. Есть задачка - find two number whick sums equal to number
Я сделал ее стандартно двумя циклами:
var twoSum = function(nums, target) {
    for(let i = 0; i < nums.length; i++) {
        for(let j = i + 1; j < nums.length; j++) {
            if(nums[i] + nums[j] === target) {
                return [i, j]
            }
        }
    }
};


Как можно упростить?
  • Вопрос задан
  • 141 просмотр
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
  • Skillfactory
    Профессия Веб-разработчик
    12 месяцев
    Далее
  • Академия Eduson
    Fullstack-разработчик на JavaScript
    11 месяцев
    Далее
Решения вопроса 1
zendor
@zendor
O(n) решение:
function twoSum(a, t) {
  let o = {};
  for (let i = 0; i < a.length; i++) {
    if (o[a[i]] !== undefined) return [o[a[i]], i];
    o[t - a[i]] = i;
  }
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы