[作业] 删除数组中重复的元素

代码:

public class Solution {
    public int RemoveDuplicates(int[] nums) {
        int j = 0;
        for(int i=0;i<nums.Length;i++)
            {
                if (i == Array.IndexOf(nums, nums[i]))
                {
                    nums[j] = nums[i];
                    j++;
                }
            }
        return j;
    }
}

大致思路:

需要用到两个数i,j作为指针
for中利用i依次判断该数是否是第一次出现在数组中
若是,则将该数放到数组中的第j位 并将j+1
最后返回的j即为数组中不重复的数的个数

//数组的第一项额外地与它自身多比较了一次 但是可以规避空数组的情况 不用额外写if判断

发布了16 篇原创文章 · 获赞 1 · 访问量 284

猜你喜欢

转载自blog.csdn.net/qq_43727054/article/details/104397649