LintCode_chapter2_section3_remove-duplicates-from-sorted-array

coding = utf-8

'''
Created on 2015年11月9日

@author: SphinxW
'''
# 删除排序数组中的重复数字
#
# 给定一个排序数组,在原数组中删除重复出现的数字,使得每个元素只出现一次,并且返回新的数组的长度。
#
# 不要使用额外的数组空间,必须在原地没有额外空间的条件下完成。
# 样例
#
# 给出数组A =[1,1,2],你的函数应该返回长度2,此时A=[1,2]。


class Solution:
    """
    @param A: a list of integers
    @return an integer
    """

    def removeDuplicates(self, A):
        # write your code here
        index = 1
        if len(A) == 0:
            return None
        fir = A[0]
        while index < len(A):
            if A[index] <= fir:
                del A[index]
            else:
                fir = A[index]
                index += 1
        return len(A)
s = Solution()
A = [1, 1, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 9]
print(s.removeDuplicates(A))

你可能感兴趣的:(LintCode_chapter2_section3_remove-duplicates-from-sorted-array)