LeetCode(26) Remove Duplicates from Sorted Array

这道题的描述有问题,它让我们返回一个int,但是run的时候你会看见你的output是一个list。为什么呢?是因为它其实是要你把Array里面所有重复的元素去掉,然后把剩下的互不重复的元素调整到Array前面来。你返回的是length,然后Array[:length]得互相不重复。
举个例子:
nums=[1,1,2]
你返回的length应该为2,但是同时nums你也要去调整它,让nums=[1,2,1],这样nums[:length]=[1,2]


下附AC代码:

class Solution:
    def removeDuplicates(self, nums):
        """
        :type nums: List[int]
        :rtype: int
        """
        if len(nums)==0: return 0
        lens = 0
        for i in range(1,len(nums)):
            if nums[lens]<nums[i]:
                lens+=1
                nums[lens] = nums[i]

        return lens+1

猜你喜欢

转载自blog.csdn.net/gzhermit/article/details/78856263