Cześć,
Potrzebuję zapisać złożoność obliczeniową trzech różnych algorytmów:
function znajdzNajw($tab, $comment){
$max1 = $tab[0];
$max2 = $tab[1];
for($i = 2; $i < count($tab); $i++){
$max1 >= $max2 ? ($tab[$i] > $max2 ? $max2 = $tab[$i] : $max2 = $max2) : ($tab[$i] > $max1 ? $max1 = $tab[$i] : $max1 = $max1);
}
$najw = array($max1, $max2);
return wyswietlPare($najw, $comment);
}
function znajdzNajm($tab, $comment){
$min1 = $tab[0];
$min2 = $tab[1];
for($i = 2; $i < count($tab); $i++){
$min1 > $min2 ? ($min1 > $tab[$i] ? $min1 = $tab[$i] : $min1 = $min1) : ($min2 > $tab[$i] ? $min2 = $tab[$i] : $min2 = $min2);
}
$najm = array($min1, $min2);
return wyswietlPare($najm, $comment);
}
function sortujTab($tab){
for($i = 0; $i < count($tab); $i++){
for($j = 0; $j < count($tab) - 1; $j++){
if($tab[$j] > $tab[$j + 1]){
$tmp = $tab[$j + 1];
$tab[$j + 1] = $tab[$j];
$tab[$j] = $tmp;
}
}
}
return $tab;
}
Czy złożonością obliczeniową dla funkcji:
znajdzNajw i znajdzNajm to O(N)
sortujTab to O(N^2)