Remove Duplicates from Sorted Array
Remove Duplicates from Sorted Array
问题:
Given a sorted array, remove the duplicates in place such that each element appear only once and return the new length.
Do not allocate extra space for another array, you must do this in place with constant memory.
For example,
Given input array A = [1,1,2]
,
Your function should return length = 2
, and A is now [1,2]
.
思路:
双指针,一个cur,一个len
我的代码:
public class Solution { public int removeDuplicates(int[] A) { if(A == null || A.length == 0) return 0; int cur = 1; for(int i = 1; i < A.length; i++) { if(A[i] != A[i-1]) { A[cur] = A[i]; cur++; } } return cur; } }
学习之处:
目前所知道的双指针的形式,有两种:1、前后双指针 2、双前指针,一块一慢(cur,len)
posted on 2015-03-08 09:53 zhouzhou0615 阅读(110) 评论(0) 编辑 收藏 举报