1.3 面试经典150题 - 删除有序数组中的重复项

删除有序数组中的重复项

python 复制代码
class Solution:
    def removeDuplicates(self, nums: List[int]) -> int:
        # 处理边界数据
        if not nums: return 0
        if len(nums) == 1: return 1
        # 两个指针,一个记录当前有多少个不重复值的个数,一个记录最新遍历到的值
        count = 1
        tmp = nums[0]
        for i in range(1, len(nums)):
            if nums[i] == tmp:
                continue
            # 遍历到新的值时,更新指针
            tmp = nums[i]
            nums[count] = tmp
            count += 1
        # 切分原数据,并返回结果
        nums = nums[:count]
        return count

删除有序数组中的重复项 II

针对上面的解答,略加改造

python 复制代码
class Solution:
    def removeDuplicates(self, nums: List[int]) -> int:
        # 处理边界数据
        if not nums: return 0
        if len(nums) == 1: return 1
        # 三个指针,一个记录当前数组中应该有的值的个数,一个记录最新遍历到的值,一个记录重复次数
        count = 1
        tmp = nums[0]
        tmp_count = 1
        for i in range(1, len(nums)):
            if nums[i] == tmp:
                # 增加重复次数计数
                tmp_count += 1
                if tmp_count > 2:
                    # 超过2次时,不记录在数组了
                    continue
            else:
                # 更新值和重复次数
                tmp = nums[i]
                tmp_count = 1
            # 更新数组的值,并更新值个数的指针
            nums[count] = tmp
            count += 1
        # 切分原数据,并返回结果
        nums = nums[:count]
        return count
相关推荐
Absurd5871 小时前
JavaScript中模块化在游戏引擎开发中的资源调度作用
jvm·数据库·python
2301_815279522 小时前
SQL如何利用聚合函数生成业务分析指标_KPI计算基础教程
jvm·数据库·python
qq_330037992 小时前
mysql如何排查Out of memory错误_mysql内存分配调优
jvm·数据库·python
好家伙VCC2 小时前
**发散创新:用Rust实现基于RAFT共识算法的轻量级分布式日志系统**在分布式系统中,**一致性协议**是保障数据可靠
java·分布式·python·rust·共识算法
weixin_458580123 小时前
如何在 Go 中直接将 AST 编译为可执行二进制文件?
jvm·数据库·python
2301_816660218 小时前
PHP怎么处理Eloquent Attribute Inference属性推断_Laravel从数据自动推导类型【操作】
jvm·数据库·python
第一程序员8 小时前
数据工程 pipelines 实践
python·github
知行合一。。。9 小时前
Python--05--面向对象(属性,方法)
android·开发语言·python
郝学胜-神的一滴9 小时前
深度学习必学:PyTorch 神经网络参数初始化全攻略(原理 + 代码 + 选择指南)
人工智能·pytorch·python·深度学习·神经网络·机器学习
qq_372154239 小时前
Go 中自定义类型与基础类型的显式转换规则详解
jvm·数据库·python