<?php function quick_sort($arr) { //快速排序法 //判斷參數是不是一個數組 if(!is_array($arr)) return false; //遞歸出口:數組長度爲1,直接返回數組 $length = count($arr); if($length<=1) return $arr; //數組元素有多個,則定義兩個空數組 $left = $right = array(); //使用for循環進行遍歷,把第一個元素當作比較的對象 for($i=1; $i<$length; $i++) { //判斷當前元素的大小 if($arr[$i]<$arr[0]){ $left[]=$arr[$i]; }else{ $right[]=$arr[$i]; } } //遞歸調用 $left=quick_sort($left); $right=quick_sort($right); //將全部的結果合併 return array_merge($left,array($arr[0]),$right); } ?>