⊗ppSpOtLAC 75 of 83 menu

Непотребно израчунавање дужине низа у петљи у PHP-у

Нека је дат неки низ са бројевима:

<?php $arr = [1, 2, 3, 4, 5]; ?>

Хајде да урадимо тако да се сваки елемент низа подигне на квадрат. То значи да треба да остане исти низ $arr, али са квадратима бројева.

У том случају петља foreach није погодна, већ је потребна обична петља for преко низа, овако:

<?php $arr = [1, 2, 3, 4, 5]; for ($i = 0; $i < count($arr); $i++) { $arr[$i] = $arr[$i] * $arr[$i]; // мењамо сваки елемент низа } var_dump($arr); ?>

Шта није у реду са овим кодом? Проблем је у томе што ће се count($arr) бесмислено израчунавати при свакој итерацији петље! Зашто, јер се дужина низа у петљи не мења, зар не?

За оптимизацију избацимо израчунавање дужине низа у посебну променљиву:

<?php $arr = [1, 2, 3, 4, 5]; $len = count($arr); // оптимизујемо for ($i = 1; $i < $len; $i++) { $arr[$i] = $arr[$i] * $arr[$i]; } var_dump($arr); ?>

Оптимизујте код приказан испод:

<?php $arr = [1, 2, 2, 4, 5]; for ($i = 1; $i < count($arr); $i++) { if ($arr[$i - 1] === $arr[$i]) { echo $arr[$i] . '<br>'; } } ?>
Српски
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Користимо колачиће за рад сајта, аналитику и персонализацију. Обрада података се врши у складу са Политиком приватности.
прихвати све подеси одбиј