Find documentation for this example at: http://www.randymelder.com/2009/12/06/php-linked-list-example/
As referenced from: http://en.wikibooks.org/wiki/Algorithm_Implementation/Sorting/Quicksort
function quicksort($seq) { if(!count($seq)) return $seq; $pivot= $seq[0]; $low = $high = array(); $length = count($seq); for($i=1; $i < $length; $i++) { if($seq[$i] <= $pivot) { $low [] = $seq[$i]; } else { $high[] = $seq[$i]; } } return array_merge(quicksort($low), array($pivot), quicksort($high)); } //Let's try some examples $myarr = array(25,5,3,4,17,1,88,8); $final = quicksort($myarr); print_r($final); $final = quicksort($final); print_r($final); $strarray = array("mark","wes","mj","bruce","ming","lance","vince"); var_dump(quicksort($strarray)); // Here's the output... Array ( [0] => 1 [1] => 3 [2] => 4 [3] => 5 [4] => 8 [5] => 17 [6] => 25 [7] => 88 ) Array ( [0] => 1 [1] => 3 [2] => 4 [3] => 5 [4] => 8 [5] => 17 [6] => 25 [7] => 88 ) array(7) { [0]=> string(5) "bruce" [1]=> string(5) "lance" [2]=> string(4) "mark" [3]=> string(4) "ming" [4]=> string(2) "mj" [5]=> string(5) "vince" [6]=> string(3) "wes" }