题解 | #删除升序数组的重复元素(二)#

删除升序数组的重复元素(二)

https://www.nowcoder.com/practice/5b617a77d7654dc193bfe5c2bdaf5cc8

python 语言用for循环边遍历边删除,用逆序或者切片的方式,可以通过小数据量的用例,有一个十万个元素的用例运行超时了。

class Solution:
    def removenums(self , nums: List[int]) -> int:
        n = len(nums)
        cur = nums[-1]
        count = 1
        for i in range(n-2,-1,-1):
            if nums[i] == cur:
                count += 1
                if count >= 3:
                    nums.remove(nums[i])
            else:
                cur = nums[i]
                count = 1
        return len(nums)
class Solution:
    def removenums(self , nums: List[int]) -> int:
        cur = nums[0]
        count = 1
        for i in nums[1:]:
            if i == cur:
                count += 1
                if count >= 3:
                    nums.remove(i)
            else:
                cur = i
                count = 1
        return len(nums)

全部评论

相关推荐

如题,他是要劝退我了吗
椛鸣:根据你的时间 来给你安排任务 如果你时间长 可能会参与到一些长期的项目 时间短 那就只能做点零工
点赞 评论 收藏
分享
能干的三文鱼刷了100道题:公司可能有弄嵌入式需要会画pcb的需求,而且pcb能快速直观看出一个人某方面的实力。看看是否有面试资格。问你问题也能ai出来,pcb这东西能作假概率不高
点赞 评论 收藏
分享
04-25 19:29
已编辑
宁波大学 测试开发
被普调的六边形战士很高大:你我美牛孩
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务