Язык | Пример кода |
JavaScript | let sum = 0;
for(let i = 0; i < arr.length; i++) { sum += arr[i];
} |
Python | sum = 0
for num in arr: sum += num |
- JavaScript: arr.reduce((a, b) => a + b, 0)
- Python: sum(arr)
- PHP: array_sum($arr)
- Java: Arrays.stream(arr).sum()
- Только положительные числа
- Элементы, удовлетворяющие определенному критерию
- Четные/нечетные элементы
Пример условного суммирования (Python)
sum(x for x in arr if x > 0)
Метод | Скорость | Читаемость |
Цикл for | Высокая | Средняя |
Встроенные функции | Очень высокая | Высокая |
Рекурсия | Низкая | Низкая |
function sumArray(arr, index = 0) { if (index >= arr.length) return 0; return arr[index] + sumArray(arr, index + 1);
}
- Пустой массив (должен возвращать 0)
- Массив с нечисловыми элементами
- Очень большие массивы (риск переполнения)
arr.reduce((a, b) => a + (Number(b) || 0), 0)
- Использование параллельных вычислений
- Разбиение массива на части
- Применение веб-воркеров в браузере
- Использование typed arrays для числовых данных