PHP Function to Remove Duplicates

This PHP function removes duplicates from a non-strictly increasing array in-place while maintaining the relative order of elements.

removeDuplicates.php
function removeDuplicates(&$nums) {
    $n = count($nums);
    if ($n == 0) {
        return 0;
    }

    $i = 0; // Slow pointer

    for ($j = 1; $j < $n; $j++) { // $j is fast pointer
        if ($nums[$j] != $nums[$i]) {
            $i++;
            $nums[$i] = $nums[$j];
        }
    }

    return $i + 1; // Return new length
}

How It Works:

Time Complexity: O(n) - Single pass through the array
Space Complexity: O(1) - Constant extra space used

太史公曰:这里定义了一个函数,目的是去除数组中重复的,然后返回不重复的有多少个,不用这个方法,你自己会怎么做呢,你会定义一个新数组,把值存一下,过一遍,存在,那么排除,下一个,最后返回数组里的元素个数就行,结果我想是一样的,但是你定义了一个新数组,也就是说空间多了,时间复杂度呢,你先是过了一遍,然后一个元素又在新数组里过了一遍,从算法的角度来看,这不是最优的

编程8年,自己还是个菜鸟,要呜呜呜吗,能跑就行,这是你的标准,怎么说呢,不上档次,水平很low,看别人写的代码,一个字好,好,好,为什么自己写不出来呢,是自己的水平不够吗,可能吧,看到大海,你只会说好多水,但是别人会说海上升明月,天涯共此时.高下立判,不是吗