Your function should return length = 2, with the first two elements of nums being 1 and 2 respectively. It doesn‘t matter what you leave beyond the new length.
思路:此题比较简单,大意是将数组中重复点删除,然后返回新数组的长度。数组中前n个数就是新的数组。唯一难点是不能用额外空间。
详细代码如下:
public class Solution {
public int removeDuplicates(int[] nums) {
if(nums.length <= 1){
return nums.length;
}
int len = 1;//新的长度,至少为1,以下循环从i=1开始
for(int i = 1; i < nums.length; i++){
if(nums[i] != nums[i-1]){//不等于前一个元素,长度+1
nums[len++] = nums[i];//将新的元素装到前len个
}
}
return len;
}
}版权声明:本文为博主原创文章,未经博主允许不得转载。
leetCode 26.Remove Duplicates from Sorted Array(删除数组重复点) 解题思路和方法
原文:http://blog.csdn.net/xygy8860/article/details/46793775