选择排序

分类:

选择排序(选择排序,堆排序,平滑排序,笛卡尔树排序,锦标赛排序,圈排序)

思想:

1、从左至右遍历,找到最小(大)的元素,然后与第一个元素交换。

2、从剩余未排序元素中继续寻找最小(大)元素,然后与第二个元素进行交换。

3、以此类推,直到所有元素均排序完毕。

示例:

 

php 
function select_sort($array){
    $count=count($array);
    for($i=0;$i<$count-1;$i++){
        $min=$i;
        for($j=$i+1;$j<$count;$j++){
            if($array[$min]>$array[$j]){
                $min=$j;
            }
        }
        if($min!=$i){
            $temp=$array[$min];
            $array[$min]=$array[$i];
            $array[$i]=$temp;
        }
    }
    return $array;
}
$arr = array(1,4,5,89,22,44,5,33,6,7,82,332);
$result = select_sort($arr);
print_r($result);