LeetCode 026 Remove Duplicates from Sorted Array
2014-03-07 12:20
369 查看
题目
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 =
Your function should return length =
有排序的数组,删除重复的元素,让每个元素都只出现一次。
需要原地处理。
思路
1 考虑两个指针。第一个指针用来遍历,第二个指针用来表示处理好的元素。
2 每次遍历碰到前面一样的,继续;碰到不一样的,存储到第二个指针的位子,然后第二个指针再往后移动一格。
3 这个方法能够使用,关键在于排序过了。这样就不会出现相隔一段距离一样的元素。
4 这类问题有很多变形,不要记住固定套路,而是根据实际情况,产生相应地逻辑代码。写出来后一定要检查各种情况。
代码
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].
有排序的数组,删除重复的元素,让每个元素都只出现一次。
需要原地处理。
思路
1 考虑两个指针。第一个指针用来遍历,第二个指针用来表示处理好的元素。
2 每次遍历碰到前面一样的,继续;碰到不一样的,存储到第二个指针的位子,然后第二个指针再往后移动一格。
3 这个方法能够使用,关键在于排序过了。这样就不会出现相隔一段距离一样的元素。
4 这类问题有很多变形,不要记住固定套路,而是根据实际情况,产生相应地逻辑代码。写出来后一定要检查各种情况。
代码
public class Solution { public int removeDuplicates(int[] A) { if(A.length==0){ return 0; } int newindex = 1; int oldindex =1; int element = A[0]; while(oldindex<A.length){ if(A[oldindex]!=element){ A[newindex]=A[oldindex]; element = A[oldindex]; newindex++; } oldindex++; } return newindex; } }
相关文章推荐
- Java for LeetCode 026 Remove Duplicates from Sorted Array
- 【LeetCode-面试算法经典-Java实现】【026-Remove Duplicates from Sorted Array(删除排序数组中的重复元素)】
- 2017-09-12 LeetCode_026 Remove Duplicates from Sorted Array
- leetcode-026 Remove Duplicates from Sorted Array
- leetcode_026 Remove Duplicates from Sorted Array
- leetcode_c++:Remove Duplicates from Sorted Array(026)
- LeetCode-026 Remove Duplicates from Sorted Array
- leetcode解题方案--026--Remove Duplicates from Sorted Array
- [LeetCode]026-Remove Duplicates from Sorted Array
- leetcode 026 Remove Duplicates from Sorted Array(难易度:Easy)
- leetcode 026 —— Remove Duplicates from Sorted Array
- LeetCode 026 Remove Duplicates from Sorted Array
- [LeetCode]题解(python):026-Remove Duplicates from Sorted Array
- LeetCode 026 Remove Duplicates from Sorted Array
- LeetCode(026) Remove Duplicates from Sorted Array (Java)
- LeetCode 26. Remove Duplicates from Sorted Array(java)
- [Leetcode] 26 - Remove Duplicates from Sorted Array
- [LeetCode] Remove Duplicates from Sorted Array
- 26 leetcode - Remove Duplicates from Sorted Array
- leetcode 刷题之路 88 Remove Duplicates from Sorted Array