How to find the maximum difference between two successive elements in an int array with PHP

2 Answers

0 votes
function max_difference($arr) {
    if (count($arr) < 2) {
        return 0;
    }

    $max_diff = 0;
    for ($i = 1; $i < count($arr); $i++) {
        $diff = abs($arr[$i] - $arr[$i - 1]);
        if ($diff > $max_diff) {
            $max_diff = $diff;
        }
    }

    return $max_diff;
}

$lst = [3, 1, 9, 5, 11, 13]; // 1, 9 -> 8

echo max_difference($lst); 




/*
run:

8

*/

 



answered Jan 8, 2025 by avibootz
0 votes
function max_difference($arr) {
    if (count($arr) < 2) {
        return 0;
    }

    sort($arr);

    $max_diff = 0;
    for ($i = 1; $i < count($arr); $i++) {
        $diff = abs($arr[$i] - $arr[$i - 1]);
        if ($diff > $max_diff) {
            $max_diff = $diff;
        }
    }

    return $max_diff;
}

$lst = [3, 1, 9, 5, 11, 13]; // sort: 1, 3, 5, 9, 11, 13 // 5, 9, -> 4

echo max_difference($lst); 




/*
run:

4

*/

 



answered Jan 8, 2025 by avibootz
...