PHP快速算法
2020-09-09 本文已影响0人
ES_KYW
PHP快速算法,注意数组地址引用,便于打印
<?php
function quik_sort(&$s,$l,$r)
{
if ($l < $r) {
$i=$l;
$j=$r;
$x = $s[$l];
while ($i<$j) {
while ( $i<$j && $s[$j] >= $x) {
$j--;
}
$s[$i]=$s[$j];
while ( $i<$j && $s[$i] <= $x) {
$i++;
}
$s[$j]=$s[$i];
}
$s[$i] = $x;
quik_sort($s,$l,$i-1);
quik_sort($s,$i+1,$r);
}
}
$arr = [1,2,4,3,2,5,6,8,3,465,21,34,5,1];
quik_sort($arr,0,count($arr)-1);
print_r($arr);
?>
Array
(
[0] => 1
[1] => 1
[2] => 2
[3] => 2
[4] => 3
[5] => 3
[6] => 4
[7] => 5
[8] => 5
[9] => 6
[10] => 8
[11] => 21
[12] => 34
[13] => 465
)