How to rearrange an array and set arr[i] to i in PHP

1 Answer

0 votes
function ArrayRearrange($arr) {
    $size = count($arr);
    
    for ($i = 0; $i < $size ; ) {
        if ($arr[$i] >= 0 && $arr[$i] != $i) {
            $temp = $arr[$arr[$i]];
            $arr[$arr[$i]] = $arr[$i];
            $arr[$i] = $temp;
        }
        else {
            $i++;
        }
    }
}
        
$arr = array(9, 0, 4, 2, 7, 6, 8, 3, 1, 5);
        
ArrayRearrange($arr);

for ($i = 0; $i < count($arr); $i++) 
    echo $arr[$i] . " ";
    
    
    
/*
run:

9 0 4 2 7 6 8 3 1 5 

*/

 



answered Dec 21, 2022 by avibootz

Related questions

1 answer 112 views
1 answer 113 views
1 answer 141 views
1 answer 106 views
1 answer 96 views
1 answer 108 views
...