/**
* 选择排序
* 原理:第一次,以数组每一个元素,跟后面的n-1个元素对比,记录最小值的下标,然后最小值跟第一个元素交换位置。
* 第二次,以第二个元素和其后面的元素比较,找到最小值,交换位置;以此类推
*/
function selectSort($arr){
$c = count($arr);
for($i = 0; $i < $c-1;$i++){
$min_pos = $i;
for ($j=$i+1;$j<$c;$j++) {
if($arr[$min_pos] > $arr[$j]){
$min_pos = $j;
}
}
if ($min_pos != $i) {
//交换位置
list($arr[$i],$arr[$min_pos]) = [$arr[$min_pos],$arr[$i]];
}
}
return $arr;
}