美文网首页
leetcode从排序数组中删除重复项

leetcode从排序数组中删除重复项

作者: dreamintime | 来源:发表于2019-03-25 19:56 被阅读0次

题目描述

题目.png

解题思路

可以将删除重复的元素理解成在数组中找不同元素。定义i和j两个变量,i初始值为0,是数组中第一个元素的索引,j初始值为1,是第二个元素的索引,从第二个元素开始遍历,找与索引为i的元素不同的元素(nums[i]!=nums[j]),如果找到了,将i的值加1,并且令nums[i]=nums[j]。遍历结束,返回i+1,即数组的长度。

java实现

public int removeDuplicates(int[] nums){
  int len=nums.length;
  if(len==1){
    return len;
  }
  int i=0;
  for(int j=1;j<len;j++){
    if(nums[i]!=nums[j]){
      i++;
      nums[i]=nums[j];
    }
  }
  return i+1;
}

相关文章

网友评论

      本文标题:leetcode从排序数组中删除重复项

      本文链接:https://www.haomeiwen.com/subject/rznbvqtx.html