Remove Duplicates from Sorted Array

来源:互联网 发布:mac如何下载eclipse 编辑:程序博客网 时间:2024/06/05 16:19

第一篇博客,今天似乎充满了鸡血,开始刷LeetCode,做一下记录。

题目为从排序的数组中删除重复的元素,还是没有什么思路,对于数组一无所知。看了一下discuss

class Solution {    public int removeDuplicates(int[] nums) {if( nums.length==0)return 0;int i=0;for(int j=0;j

在本地运行,不通,我知道肯定不通,就直接去judging,然后,出现错误,排错,了解了以下几点:

1. nums=0;   四不像,数组与数组元素的区分,nums 是数组名字,nums[]表示的是数组,nums[0]表示第一个元素。

本题需要判断是不是非空数组,判断的话应该用‘ == ’(我不知道怎么判[] ,用元素为零是不对的),所以用数组的长度。

2.数组名.length 表示的是数组的长度,可以不用指出来这是int型,这是数组的属性。

3.运行时出现Line 8: java.lang.ArrayIndexOutOfBoundsException: 2  删空格不对,原来是数组下标越界,也就是说你访问的元素索引大于了数组的个数-1。

回头检查我的代码,果然,没背准确,i与j 在赋值时出错,就说怎么不理解呢,应该是把j索引的重复元素,赋值到i索引的元素,j是去索引新的元素,所以是拿它去dosomething.

4.++i, 先赋给i,在加一,来确定新数组的长度,即返回值。