编程语言
首页 > 编程语言> > Leetcode练习(Python):数组类:第80题:给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素最多出现两次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改

Leetcode练习(Python):数组类:第80题:给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素最多出现两次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改

作者:互联网

题目: 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素最多出现两次,返回移除后数组的新长度。  不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。  思路: 思路较简单 程序: class Solution:     def removeDuplicates(self, nums: List[int]) -> int:         length = len(nums)         if length <= 2:             return len(nums)         counter = 0         index = 1         while index < len(nums):             if nums[index - 1] == nums[index]:                 counter += 1                 if counter >= 2:                     del nums[index]                     index = index - 1             else:                 counter = 0             index += 1         return len(nums)

标签:index,额外,nums,元素,原地,数组
来源: https://www.cnblogs.com/zhuozige/p/12761277.html