PHPピット之:クイックソート

1334 ワード

C.R.A.Hoare 1962 。 , (Divide-and-ConquerMethod)。 1. 。 2. , , 。 3. , 。

function quickSort($arr){
    if(count($arr)>1){
        $k=$arr[0];
        $x=array();
        $y=array();
        $_size=count($arr);
        for($i=1;$i$k){
                $y[]=$arr[$i];
            }
        }
        $x=quickSort($x);
        $y=quickSort($y);
        return array_merge($x,array($k),$y);
    }else{
        return $arr;
    }
}

echo "brefore sort:
"; $data = array(57, 68, 59, 52, 72, 28, 96, 33, 24); foreach ($data as $key => $value) { echo "$value "; } echo "
sorted:
"; $data = quickSort($data); foreach ($data as $key => $value) { echo "$value "; }