How to sort an array in descending order using selection sort with PHP

1 Answer

0 votes
function selection_sort_descending(&$arr) {
    $len = count($arr);
    
    for ($i = 0; $i < $len - 1; $i++) {
        $max_i = $i;
        for ($j = $i + 1; $j < $len; $j++) {
            if ($arr[$j] > $arr[$max_i]) {
                $max_i = $j;
            }
        }
        
        $max = $arr[$max_i];
        $arr[$max_i] = $arr[$i];
        $arr[$i] = $max;
    }
}

$arr = array(2, 141, 3, 4, 21, 13, 30, 50);

selection_sort_descending($arr);
        
foreach ($arr as $n) {
    echo $n . " ";
}



/*
run:

141 50 30 21 13 4 3 2 

*/

 



answered Feb 20, 2024 by avibootz
...