26. Remove Duplicates from Sorted Array

前提是一个sorted array,指针k指向当前位置的唯一值,遍历数组,指针i一旦发现有和nums[k]不相等的数字,k指向下一个位置,将nums[i]赋值给位置k,最后返回元素个数index + 1

public int removeDuplicates(int[] nums) {
    int k = 0;
    for (int i = 0; i < nums.length; i++) {
        if (nums[i] != nums[k]) {
            nums[++k] = nums[i];
        }
    }
    return k + 1; // count = index + 1
}

results matching ""

    No results matching ""