题目地址:[https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array/)
解题思路:有了上一题的基础,看见这道题的时候,应该立刻想到双指针
法。但不同于上一题的是,这次需要将非重复元素移动到数组的开端,需要注意的点就是数组是一个有序数组,重复数字必定是相邻的,抓好这个重点,这道题就不难解了。
class Solution { public int removeDuplicates(int[] nums) { if (nums == null || nums.length == 0) { return 0; } int head = 0; int tail = 1; while (tail < nums.length) { if (nums[head] != nums[tail]) { nums[head + 1] = nums[tail]; head++; } else { tail++; } } return head+1; } }