- c++
要学会擅用函数!!我自己的方法太复杂了!用了好几个循环太慢太费时了,参考一下大佬的方法:
if (nums.size() < 2) return nums.size();
int j = 0;
for (int i = 1; i < nums.size(); i++)
if (nums[j] != nums[i]) nums[++j] = nums[i];
return ++j;
- python
现在并不能熟练掌握python。。。先参考下面解法:
class Solution:
def removeDuplicates(self, nums: List[int]) -> int:
if not nums:
return False
for i in range(len(nums)-1,0,-1):
if nums[i] == nums[i-1]:
nums.pop(i)
i -= 1
return len(nums)