腾讯9-删除排序数组中的重复项

本文介绍了一种解决LeetCode上编号为26的题目“删除排序数组中的重复项”的方法。该题主要考察指针操作,特别针对Python实现进行了优化,通过从后向前遍历并利用pop函数,实现了O(1)的空间复杂度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

腾讯9-删除排序数组中的重复项leetcode26

这道题是考指针的题,天然对python不友好,
python 中不用额外空间,复杂度还只能是O(1),的只有pop方法,
想到pop方法,再想到从后向前遍历就容易多了。
这里还要记住一点,python的pop函数是可以带索引的,pop(num_index)。

def removeDuplicates(nums):
    for num_index in range(len(nums)-1, 0, -1):
        if nums[num_index] == nums[num_index-1]:
            nums.pop(num_index)
    return len(nums)

作者:lpgit
链接:https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array/solution/shan-chu-pai-xu-shu-zu-zhong-de-zhong-fu-xiang-fen/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值