Алгоритм для получения суммы произведений с исключением i-го элемента

/
1 минута чтения

Если контент не отображается, включите VPN.

function sum(array) {
  if(!Array.isArray(array)) throw new Error('Argument must be an Array')

  let _sum = 0;
  rec(0, array);

  function rec(index, array) {
    if(!array) return;
    if(index === array.length) return;

    const mulVal = array.filter((_, i) => {
      return i !== index;
    }).reduce((pre, nex) => {
      return pre * nex;
    });

    _sum += mulVal;
    rec(++index, array);
  }

  return _sum;
}

Тест:

sum([1, 2, 3, 4]); // 50

Приглашаю к общению в комментариях!

0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
Предыдущая статья

Преобразование underscore_case в camelCase в camel-Case-To-Dash на JS

Следующая статья

Polymer 2 Shadow Canvas