<?php
function quicksort( $array ) {
if( count( $array ) < 2 ) {
return $array;
}
$left = $right = array( );
reset( $array );
$pivot_key = key( $array );
$pivot = array_shift( $array );
foreach( $array as $k => $v ) {
if( $v < $pivot )
$left[$k] = $v;
else
$right[$k] = $v;
}
return array_merge(quicksort($left), array($pivot_key => $pivot), quicksort($right));
}
//Using quicksort()
$array = quicksort(array(5,7,8,9,1,4,6,3,5,9,1,2,5,4,5,8,6)); //returns sorted array.
preferences:
33.49 ms | 402 KiB | 5 Q