快速排序PHP实现 php 快速排序法 php 快速排序的思路 快速排序算
程序员文章站
2022-04-05 20:19:29
...
/**
*
* 快速排序:不稳定,时间复杂度 最理想 O(nlogn) 最差时间O(n^2)
* 快速排序是对冒泡排序的一种本质改进。它的基本思想是通过一趟扫描后,
* 使得排序序列的长度能大幅度地减少。在冒泡排序中,一次扫描只能确保最大数值的数移到正确位置,
* 而待排序序列的长度可能只减少1。快速排序通过一趟扫描,就能确保某个数(以它为基准点吧)的左边各数都比它小,
* 右边各数都比它大。然后又用同样的方法处理它左右两边的数,直到基准点的左右只有一个元素为止。
* @param array $arr
* @return array
*/functionfastSort(array $arr){if(count($arr) > 1){
$num = $arr[0];
$arrSmall = [];
$arrBig = [];
foreach ($arras$item){
if($item>$num){
$arrBig[] = $item;
}elseif($item$num