Die Keuse van die Optimale Algoritme in PHP
Soms kan die probleem met die kode verband hou daarmee, dat die nie die mees optimale oplossing vir die probleem gekies is nie.
Laat ons byvoorbeeld die taak hê
om die som van heelgetalle van 1 tot 1000000 te vind.
Laat ons die gestelde probleem oplos:
<?php
$sum = 0;
for ($i = 1; $i <= 1000000; $i++) {
$sum += $i;
}
echo $i;
?>
Wat is dan verkeerd? Die saak is dat daar 'n wiskundige oplossing vir die gestelde probleem bestaan.
Hierdie oplossing vereis feitlik geen hulpbronne nie! Laat ons dit programmeer:
<?php
$n = 1000000;
$sum = $n * ($n + 1) / 2;
echo $sum;
?>
Die moraal: voor jy 'n hulpbron-intensiewe taak oplos, moet jy altyd nagaan of daar nie 'n klaargemaakte wiskundige formule of 'n klaargemaakte wiskundige benadering vir die oplossing daarvan is nie.
Vind die aantal getalle wat sonder 'n res deelbaar is
deur 5, uit die reeks van 1 tot
1000.
Vind die aantal syfers wat benodig sal word
om alle getalle van 1 tot 1000000 te skryf.
Vind alle priemgetalle in die reeks van
1 tot 10000. 'n Ster-taak,
jy hoef dit nie op te los nie.