PHP-da iň gowy algoritmi saýlamak
Bäzende kodyň meselesi, mesele üçin iň gowy çözgüt saýlanmandygy bilen baglanyşykly bolup biler.
Mysal üçin, bizde 1-den 1000000-a çenli bolsan sanlaryň jemini tapmaly mesele durupdyr. Goylan meseläni çözeris:
<?php
$sum = 0;
for ($i = 1; $i <= 1000000; $i++) {
$sum += $i;
}
echo $i;
?>
Ýagdaý näme? Bu ýagdaý, goylan mesele üçin matematiki çözgüt bardyr.
Bu çözgüt üznüksiz resurs talap etmeýär! Ony programmirleris:
<?php
$n = 1000000;
$sum = $n * ($n + 1) / 2;
echo $sum;
?>
Hikmet: Resurs sarp edýän mesele çözmän öň, çözmek üçin taýyn matematiki formulanyň ýa-da taýyn matematiki ýakyňyşyň bardygyny doly barlaň.
1-den 1000-e çenli aralykdan, 5-e galdyksyz bölünýän sanlaryň sanyny tapyň.
1-den 1000000-a çenli hemme sanlary ýazmak üçin näçe san gerek boljakdygyny tapyň.
1-den 10000-e çenli aralykdaky hemme ýönekeý sanlary tapyň. Ýyldyzly mesele, çözüp bilersiňiz ýa-da çözmeýärsiňiz.