冒泡排序
$arr = [1, 3, 2, 6, 8, 2, 0];
$len = count($arr);
for ($i = 0; $i < $len; $i++) {
for ($j = 0; $j < $len - 1; $j++) {
if ($arr[$j] > $arr[$j + 1]) {
$temp = $arr[$j];
$arr[$j] = $arr[$j + 1];
$arr[$j + 1] = $temp;
}
}
}
var_dump($arr);
快速排序
function quickSort($arr)
{
$length = count($arr);
if ($length <= 1) {
return $arr;
}
$base = $arr[0];
$left = $right = array();
for ($i = 1; $i < $length; $i++) {
if ($base > $arr[$i]) {
$left[] = $arr[$i];
} else {
$right[] = $arr[$i];
}
}
$left = quickSort($left);
$right = quickSort($right);
return array_merge($left, array($base), $right);
}
$arr = [1, 3, 21, 6, 8, 2, 4];
$arr = quickSort($arr);
var_dump($arr);