Elección del algoritmo óptimo en PHP
A veces, el problema del código está relacionado con el hecho de que no se eligió la solución más óptima para el problema.
Supongamos, por ejemplo, que nos enfrentamos a la tarea
de encontrar la suma de números enteros desde 1 hasta 1000000.
Resolvamos la tarea planteada:
<?php
$sum = 0;
for ($i = 1; $i <= 1000000; $i++) {
$sum += $i;
}
echo $i;
?>
¿Qué está mal? El problema es que para resolver esta tarea existe una solución matemática.
¡Esta solución prácticamente no requiere recursos! Programémosla:
<?php
$n = 1000000;
$sum = $n * ($n + 1) / 2;
echo $sum;
?>
Moraleja: antes de resolver una tarea que consume muchos recursos, asegúrese siempre de verificar si existe una fórmula matemática predefinida o un enfoque matemático listo para su solución.
Encuentre la cantidad de números divisibles sin resto
por 5, en el intervalo desde 1
hasta 1000.
Encuentre la cantidad de dígitos que se necesitarán
para escribir todos los números desde 1 hasta 1000000.
Encuentre todos los números primos en el intervalo desde
1 hasta 10000. Tarea opcional,
no es obligatorio resolverla.