当前位置: 首页 > news >正文

每日leetcode--删除有序数组中的重复项

问题描述

给定一个包含重复元素的整数列表nums,我们需要移除其中的重复元素,并返回去重后的列表长度。

题目链接:. - 力扣(LeetCode)

解决方案: 我们可以使用一个额外的列表来存储不重复的元素,并通过遍历原始列表,将不重复的元素添加到额外的列表中。最后,我们将原始列表更新为额外列表的内容,并返回去重后的列表长度。

python代码

class Solution:def removeDuplicates(self, nums: List[int]) -> int:count = 0used = []for i in nums:if i not in used:used.append(i)else:count+=1nums[:] = usedreturn len(nums)

代码解析

在上述代码中,我们使用了两个变量:

used 列表用于存储不重复的元素,

count 用于计数重复元素的个数。

通过遍历原始列表 nums,我们判断每个元素是否已经存在于 used 列表中,如果不存在则将其添加到 used 列表中,否则增加 count 的值。最后,我们将原始列表 nums 更新为 used 列表的内容,并返回去重后的列表长度。

其中,

nums[:] = used

能修改nums本身数据,如果是

nums= used

则只能将nums指向used,而不会改变nums本身,类似于C语言中的传地址与传值,

以上就是解决去除重复元素问题的Python算法。希望本篇博客能对你有所帮助!

相关文章:

  • Node.JS入门(day01)
  • python3 flask 实现对config.yaml文件的内容的增删改查,并重启服务
  • 去重求和(最大N个数和最小N个数的和)(C 语言)
  • LINUX rpm离线包下载办法
  • 设计模式学习笔记 - 面向对象 - 6.为什么要基于接口而非实现编程?有必要为每个类都定义接口吗?
  • PD协议取电芯片:支持多协议小体积外围支持配置输出不同电压
  • 目标检测-Transformer-ViT和DETR
  • 备战蓝桥杯—— 双指针技巧巧答链表1
  • Leetcoder Day17| 二叉树 part06
  • 如何将实景三维倾斜模型叠加到三维地球上?
  • AMRT3D数字孪生引擎详解
  • DataX学习详解
  • 【笔记】【开发方案】APN 配置参数 bitmask 数据转换(Android KaiOS)
  • 数字热潮:iGaming 能否推动加密货币的普及?
  • 【LeetCode-337】打家劫舍III(动态规划)
  • JS中 map, filter, some, every, forEach, for in, for of 用法总结
  • [译] 怎样写一个基础的编译器
  • ES2017异步函数现已正式可用
  • java B2B2C 源码多租户电子商城系统-Kafka基本使用介绍
  • js写一个简单的选项卡
  • Netty 4.1 源代码学习:线程模型
  • PyCharm搭建GO开发环境(GO语言学习第1课)
  • vue数据传递--我有特殊的实现技巧
  • 观察者模式实现非直接耦合
  • 扑朔迷离的属性和特性【彻底弄清】
  • 使用 Xcode 的 Target 区分开发和生产环境
  • 无服务器化是企业 IT 架构的未来吗?
  • 小程序button引导用户授权
  • 一些css基础学习笔记
  • Prometheus VS InfluxDB
  • 整理一些计算机基础知识!
  • ​ssh免密码登录设置及问题总结
  • ​草莓熊python turtle绘图代码(玫瑰花版)附源代码
  • ​决定德拉瓦州地区版图的关键历史事件
  • ![CDATA[ ]] 是什么东东
  • #AngularJS#$sce.trustAsResourceUrl
  • (0)Nginx 功能特性
  • (C语言)二分查找 超详细
  • (初研) Sentence-embedding fine-tune notebook
  • (非本人原创)史记·柴静列传(r4笔记第65天)
  • (附源码)springboot学生选课系统 毕业设计 612555
  • (附源码)ssm经济信息门户网站 毕业设计 141634
  • (九)One-Wire总线-DS18B20
  • (论文阅读笔记)Network planning with deep reinforcement learning
  • (一)插入排序
  • (转)C语言家族扩展收藏 (转)C语言家族扩展
  • (转)h264中avc和flv数据的解析
  • (转)Sql Server 保留几位小数的两种做法
  • .NET 简介:跨平台、开源、高性能的开发平台
  • .net 流——流的类型体系简单介绍
  • .NET 中让 Task 支持带超时的异步等待
  • .NET牛人应该知道些什么(2):中级.NET开发人员
  • .net网站发布-允许更新此预编译站点
  • .NET委托:一个关于C#的睡前故事
  • [2017][note]基于空间交叉相位调制的两个连续波在few layer铋Bi中的全光switch——