Valg af den optimale algoritme i PHP
Sommetider er problemet med koden forbundet med, at der ikke er valgt den mest optimale løsning på opgaven.
Lad os for eksempel sige, at vi står over for opgaven
at finde summen af heltal fra 1 til 1000000.
Lad os løse den stillede opgave:
<?php
$sum = 0;
for ($i = 1; $i <= 1000000; $i++) {
$sum += $i;
}
echo $i;
?>
Hvad er der så galt? Sagtens er, at for at løse den stillede opgave findes der en matematisk løsning.
Denne løsning kræver stort set ingen ressourcer! Lad os programmere den:
<?php
$n = 1000000;
$sum = $n * ($n + 1) / 2;
echo $sum;
?>
Moralen: Før du løser en ressourcekrævende opgave, sørg altid for at tjekke, om der findes en færdig matematisk formel eller en færdig matematisk tilgang til at løse den.
Find antallet af tal, der er delelige uden rest
med 5, i intervallet fra 1 til
1000.
Find antallet af cifre, der vil være nødvendigt
for at skrive alle tal fra 1 til 1000000.
Find alle primtal i intervallet fra
1 til 10000. Opgave med en stjerne,
behøver ikke at løses.