冒泡排序
- function
bubble_sort($arr) - {
-
$len = count($arr); -
if($len <= 0) return false; -
for($i=0; $i<$len-1; $i++) -
{ -
for($j=$i+1; $j<$len-1; $j++) -
{ -
if($arr[$i] > $arr[$j]) -
{ -
$t = $arr[$i]; -
$arr[$i] = $arr[$j]; -
$arr[$j] = $t; -
} -
} -
} -
return $arr; - }
插入排序
- function
insert_sort($arr) - {
-
$len = count($arr); -
if($len <= 0) return false; -
for($i=1; $i<$len; $i++) -
{ -
$flag = $arr[$i]; //待插入的数 -
for($j=$i-1; $arr[$j]>$flag && $j>=0; $j--) //向前插入合适位置 -
{ -
$arr[$j+1] = $arr[$j]; //比它大的逐个后移 -
} -
$arr[$j+1] = $flag; -
} -
return $arr; - }
选择排序
- function
select_sort($arr) - {
-
$len = count($arr); -
if($len <= 0) return false; -
for($i=0; $i<$len; $i++) -
{ -
$min = $i; -
for($j=$i+1; $j<$len; $j++) //记录剩下中最小那的 -
{ -
if($arr[$j]<$arr[$min]) $min = $j; -
} -
if($min != $i) //把当前数与该最小数交换 -
{ -
$temp = $arr[$min]; -
$arr[$min] = $arr[$i]; -
$arr[$i] = $temp; -
} -
} -
return $arr; - }
快速排序
没有评论:
发表评论