思路: 每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完
复杂度: O(n^2)
实现一:
function selectSort($num){
for($i = 0; $i < count($num); $i++){
for($j = $i + 1; $j < $n; $j++){
if($num[$i] > $num[$j]){
$num[$i] ^= $num[$j];
$num[$j] ^= $num[$i];
$num[$i] ^= $num[$j];
}
}
}
return $num;
}
实现二:
function selectSort($num){
for($i = 0; $i < count($num); $i++){
$k = $i;
for($j = $i; $j < $n; $j++){
if($num[$k] > $num[$j]){
$k = $j;
}
}
if($i != $k){
$num[$i] ^= $num[$k];
$num[$k] ^= $num[$i];
$num[$i] ^= $num[$k];
}
}
return $num;
}