Shell-módszer
Beküldte pzoli - 2011, május 23 - 5:56du
Nem foglalkozunk egyszerre minden rendezendő elemmel, csak az egymástól meghatározott távolságra lévőkkel. Minden rendezési kör elején meghatározzuk a lépésközt, amelyen belül az elemeket rendezzük az általunk választott valamely algoritmussal.
<?php
function shellSort($arr)
{
$inc = round(count($arr)/2);
while($inc > 0)
{
for($i = $inc; $i < count($arr);$i++){
$temp = $arr[$i];
$j = $i;
while($j >= $inc && $arr[$j-$inc] > $temp)
{
$arr[$j] = $arr[$j - $inc];
$j -= $inc;
}
$arr[$j] = $temp;
}
$inc = round($inc/2.2);
}
return $arr;
}
?>
- A hozzászóláshoz be kell jelentkezni