//插入排序(一维数组)
function insert_sort($arr){
$count = count($arr);
for($i=
; $i<$count; $i++){
$tmp = $arr[$i];
$j = $i
;
while($arr[$j] > $tmp){
$arr[$j+
] = $arr[$j];
$arr[$j] = $tmp;
$j
;
}
}
return $arr;
}
//选择排序(一维数组)
function select_sort($arr){
$count = count($arr);
for($i=
; $i<$count; $i++){
$k = $i;
for($j=$i+
; $j<$count; $j++){
if ($arr[$k] > $arr[$j])
$k = $j;
if ($k != $i){
$tmp = $arr[$i];
$arr[$i] = $arr[$k];
$arr[$k] = $tmp;
}
}
}
return $arr;
}
//冒泡排序(一维数组)
function bubble_sort($array){
$count = count($array);
if ($count <=
) return false;
for($i=
; $i<$count; $i++){
for($j=$count
; $j>$i; $j
){
if ($array[$j] < $array[$j
]){
$tmp = $array[$j];
$array[$j] = $array[$j
];
$array[$j
] = $tmp;
}
}
}
return $array;
}
//快速排序(一维数组)
function quick_sort($array){
if (count($array) <=
) return $array;
$key = $array[
];
$left_arr = array();
$right_arr = array();
for ($i=
; $i<count($array); $i++){
if ($array[$i] <= $key) $left_arr[] = $array[$i];
else
$right_arr[] = $array[$i];
}
$left_arr = quick_sort($left_arr);
$right_arr = quick_sort($right_arr);
return array_merge($left_arr
array($key)
$right_arr);
}