這篇文章介紹的內容是PHP演算法中的快速排序的程式碼,現在分享給大家,有需要的小夥伴也可以參考一下,大家一起來看看吧
<?php //快速排序 function quicksort($arr) { //结束条件 //判断当前数组是否需要排序 if(count($arr)<=1){ return $arr; } $num = $arr[0]; //进行排序 定义标尺 $left_array = []; //左边数组 $right_array = [];//右边数组 for($i = 1;$i<count($arr);$i++){ if($num>$arr[$i]){ $left_array[] = $arr[$i];//比当前数小放到左边数组 } else { $right_array[] = $arr[$i];//比当前数大放到右边数组 } } //递归 调用自身 $left_array = quicksort($left_array); $reght_array = quicksort($right_array); //合并数组 返回排序好的数组 return array_merge($left_array,array($num),$reght_array); } //需要排序的数组 $arr = array(2,3,5,6,9,8,4,1); //调用递归 print_r(quicksort($arr));
相關推薦:
以上是php演算法之 快速排序的詳細內容。更多資訊請關注PHP中文網其他相關文章!