<?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);
}
?>
PHP基礎演算法之快速排序法
相關文章
- PHP基礎演算法之選擇排序法PHP演算法排序
- PHP基礎演算法之氣泡排序法PHP演算法排序
- 老生常談之 PHP 基礎排序演算法PHP排序演算法
- 演算法之快速排序(php版)演算法排序PHP
- 基礎演算法之排序演算法演算法排序
- 夯實基礎:排序演算法之堆排序排序演算法
- 排序演算法之 '快速排序'排序演算法
- 演算法之快速排序演算法排序
- 資料結構 8 基礎排序演算法詳解、快速排序的實現、瞭解分治法資料結構排序演算法
- PHP 排序演算法之選擇排序PHP排序演算法
- PHP 排序演算法之希爾排序PHP排序演算法
- PHP 排序演算法之插入排序PHP排序演算法
- 基礎演算法系列 之希爾排序演算法排序
- 排序演算法之快速排序的實現排序演算法
- 畫江湖之演算法篇【排序演算法】快速排序演算法排序
- 畫江湖之演算法篇 [排序演算法] 快速排序演算法排序
- 演算法基礎:排序演算法:選擇排序演算法排序
- PHP演算法之四大基礎演算法PHP演算法
- 演算法圖解之快速排序演算法圖解排序
- 看動畫學演算法之:排序-快速排序動畫演算法排序
- 排序演算法之「快速排序(Quick Sort) _c++ 」排序演算法UIC++
- 演算法之常見排序演算法-氣泡排序、歸併排序、快速排序演算法排序
- PHP快速上手(03):PHP語言基礎PHP
- 快速排序法排序
- 20200126 - PHP 基礎語法PHP
- PHP快速上手(11):HTML基礎PHPHTML
- 資料結構和演算法面試題系列—排序演算法之基礎排序資料結構演算法面試題排序
- PHP 演算法02之插入排序PHP演算法排序
- 排序演算法__快速排序排序演算法
- 排序演算法:快速排序排序演算法
- 排序演算法 - 快速排序排序演算法
- 排序之快速排序排序
- 演算法學習 - 基礎排序演算法演算法排序
- php實現 歸併排序,快速排序PHP排序
- 【JAVA演算法】排序演算法 -- 快速排序Java演算法排序
- php插入排序,快速排序,歸併排序,堆排序PHP排序
- 《資料結構與演算法》之十大基礎排序演算法資料結構演算法排序
- 演算法基礎之8大排序演算法最優解-必讀演算法排序