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

删除有序数组中的重复项(LeetCode)

题目

给你一个 升序排列 的数组 nums,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然后返回 nums 中唯一元素的个数。

考虑 nums 的唯一元素的数量为 k ,你需要做以下事情确保你的题解可以被通过:

  • 更改数组 nums ,使 nums 的前 k 个元素包含唯一元素,并按照它们最初在 nums 中出现的顺序排列。nums 的其余元素与 nums 的大小不重要。
  • 返回 k 。

解题

def remove_duplicates(nums):if not nums:return 0# unique_index 初始化为 1,因为第一个元素总是唯一的unique_index = 1# 遍历数组,从第二个元素开始for current_index in range(1, len(nums)):# 如果当前元素不等于前一个元素,说明是唯一元素if nums[current_index] != nums[current_index - 1]:nums[unique_index] = nums[current_index]unique_index += 1return unique_index# 示例使用
nums = [1, 1, 2, 2, 3, 4, 4, 5]
k = remove_duplicates(nums)
print("数组中唯一元素的个数:", k)
print("修改后的数组:", nums[:k])

数组中唯一元素的个数: 5
修改后的数组: [1, 2, 3, 4, 5]

相关文章:

删除有序数组中的重复项(LeetCode)

题目 给你一个 升序排列 的数组 ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然后返回 中唯一元素的个数。 考虑 的唯一元素的数量为 ,你需要做以下事情确…...

【算法 03】雇佣问题

“雇用问题”及其算法优化 在日常生活和工作中,我们经常会遇到需要从多个选项中做出选择的情况,而“雇用问题”正是这样一个典型的例子。在这个问题中,我们不仅要考虑如何高效地找到最佳候选人,还要关注整个过程中的成本。今天&a…...

vue3+axios请求导出excel文件

在Vue 3中使用axios请求导出Excel文件,可以发送一个GET或POST请求,并设置响应类型为blob或arraybuffer,然后使用new Blob()构造函数创建一个二进制文件,最后使用URL.createObjectURL()生成一个可以下载的链接。 先看代码 import…...

LLM与NLP

大语言模型与自然语言处理的关系:整体与组成的关系如 自然语言理解的编码器式(encoder-only)的架构是语境相关的词表示BERT; 自然语言转换的编码器-解码器式的(encoder-decoder)的架构是词频-逆文档词频T…...

js 判断是否为回文串

需求:忽略英文大小写和空格差异,判断是否为回文字符串(例如"我爱你 你爱我","abc bA") 思路:利用翻转字符串比较,利用循环双指针,利用递归或者双循环&#xf…...

多重背包c++

题目描述 有N种物品和一个容量是V的背包。 第i种物品最多有si件,每件体积是vi,价值是wi。 求解将哪些物品装入背包,可使物品体积总和不超过背包容量,且价值总和最大。 输出最大价值。 输入 第一行两个整数,N&#x…...

kernel input事件测试程序

测试内核input 事件测试程序。 getevent -lt 命令查看注册的是是event0/1/2/3/4 中的哪一个。 gcc input_test.c -o input_test 编译成可执行程序。将编译的input_test,U盘或ADB push到系统里面,chmod 777 input_test 在 ./input_test input_test.c #…...

gd32 i2c 中断 主机从机双向通信例程

Master I2C0_SCL PB8 AF4 I2C0_SDA PB9 AF4 Slave I2C1_SCL PB10 AF4 I2C1_SDA PB11 AF4 //主机中断发送 void i2c_master_transmit_it(uint32_t address, uint8_t* buff, uint32_t size); //主机中断接收 void i2c_master_receive_it(uint32_t address, uint8_t* buff, uint…...

程序员在AI时代:重塑核心竞争力,共舞智能未来

程序员在AI时代:重塑核心竞争力,共舞智能未来 在这个日新月异的科技时代,人工智能生成内容(AIGC)技术,尤其是以ChatGPT、Midjourney、Claude等为代表的大语言模型,正以前所未有的速度渗透到编程…...

apex发送邮件中显示饼状图和条形图

在 Apex 中发送带有嵌入图表(如饼状图和条形图)的电子邮件,您可以通过以下步骤实现: 生成图表图像:使用外部库或服务生成图表图像并获取图像的 URL 或 Base64 编码。创建电子邮件模板:在 HTML 邮件模板中嵌…...

【HarmonyOS NEXT星河版开发学习】小型测试案例07-弹性布局小练习

个人主页→VON 收录专栏→鸿蒙开发小型案例总结​​​​​ 基础语法部分会发布于github 和 gitee上面(暂未发布) 前言 在鸿蒙(HarmonyOS)开发中,Flex布局是一种非常有用的布局方式,它允许开发者创建灵活且响…...

Sparksql array相关函数

前言 Apache Spark SQL 是 Spark 的一个重要模块,用于处理结构化数据。它提供了 DataFrame 和 Dataset API,使得开发者能够使用 SQL 查询语言(称为 Spark SQL)对数据进行高效的操作。在本文中,我们将介绍 Spark SQL 中所有与array相关的函数。 环境 sparksql版本<dep…...

软件测试学习笔记

测试学习 1. 测试流程2. Bug的提出什么是bugbug 的描述bug 级别 3. 测试用例的设计什么是测试用例测试用例应如何设计基于需求的设计方法等价类边界值场景法正交表法判定表法错误猜测法 4. 自动化测试回归测试自动化分类 5. 安装 webdriver-manager 和 selenium第一个web自动化…...

Centos 8系统ext4文件系统类型进行扩容缩容 (LVM)

Centos 8系统ext4文件系统类型进行扩容缩容 &#xff08;LVM&#xff09; 1.磁盘情况&#xff1a;2.缩容home分区1.备份home数据&#xff1a;2.查找使用 /home 的进程&#xff1a;3.终止这些进程&#xff1a;4.卸载 /home 分区5.检查文件系统一致性 (e2fsck)&#xff1a;6.调整…...

常考常考高频率

1.快排&#xff08;双指针&#xff09; 快排&#xff0c;归并排序&#xff0c;堆排序 #快速排序O&#xff08;nlogn&#xff09; def quick_sort(array, left, right):if left < right:mid partition(array, left, right)quick_sort(array, left, mid)quick_sort(array, …...

Linux项目环境的搭建 (Red hat 9.0Linux操作系统)

一、目的&#xff1a; 1.搭建Linux操作系统项目所需的项目环境构件&#xff1b; 2.了解 Linux的组成&#xff0c;学会编译内核。 二、内容&#xff1a; 安装Red hat 9.0Linux操作系统&#xff1b; 三、步骤&#xff1a; 3.1 正确安装Redhat9.0操作系统。 3.2 rpm -Uvh *.…...

Study--Oracle-08-ORACLE数据备份与恢复(一)

一、ORACLE数据保护方案 1、oracle数据保护方案 2、数据库物理保护方案 oracle数据库备份可以备份到本地集群存储,也可以备份到云存储。 3、数据库逻辑数据保护方案 二、ORACLE数据体系 1、ORACLE 数据库的存储结构 2、oracle物理和逻辑存储结构 3、数据库进程 4、数据库日…...

FreeIPA安装

一、环境准备 主机名IP角色master. bhlu. com192.168.22.10服务端node1. bhlu. com192.168.22.11客户端 两台服务器关闭防火墙和 selinux配置好 yum 源 1.1 配置 chronyd 配置好 chronyd&#xff0c;使用 chronyc source -v 可以验证 # 这里写了一个playbook作为示例了 --…...

mysql数据库:SQL语言基础和基本查询

mysql数据库&#xff1a;SQL语言基础和基本查询 SQL语言简介 Structured Query Language, 结构化查询语言非过程性语言为加强SQL的语言能力&#xff0c;各厂商增强了过程性语言的特征如&#xff1a;Oracle的PL/SQL 过程性处理能力&#xff0c;SQL Server、Sybase的T-SQLSQL是用…...

strimzi operator 部署kafka集群(可外部访问)

Strimzi介绍 官方文档:https://strimzi.io/docs/operators/0.42.0/overview#kafka-components_str Strimzi介绍 Strimzi 是一个用于 Apache Kafka 在 Kubernetes 上部署和管理的开源项目。它提供了一组 Kubernetes 自定义资源定义(Custom Resource Definitions,CRDs)、控制…...

Music Tag Web:音乐元数据修复与管理的全栈解决方案

Music Tag Web&#xff1a;音乐元数据修复与管理的全栈解决方案 【免费下载链接】music-tag-web 音乐标签编辑器&#xff0c;可编辑本地音乐文件的元数据&#xff08;Editable local music file metadata.&#xff09; 项目地址: https://gitcode.com/gh_mirrors/mu/music-ta…...

Phi-4-Reasoning-Vision快速部署:CI/CD自动化测试流水线搭建

Phi-4-Reasoning-Vision快速部署&#xff1a;CI/CD自动化测试流水线搭建 1. 项目概述 Phi-4-Reasoning-Vision是基于微软Phi-4-reasoning-vision-15B多模态大模型开发的高性能推理工具&#xff0c;专为双卡4090环境优化。这个工具严格遵循官方SYSTEM PROMPT规范&#xff0c;支…...

AutoCAD字体管理终极指南:FontCenter自动解决字体缺失问题

AutoCAD字体管理终极指南&#xff1a;FontCenter自动解决字体缺失问题 【免费下载链接】FontCenter AutoCAD自动管理字体插件 项目地址: https://gitcode.com/gh_mirrors/fo/FontCenter 还在为AutoCAD图纸中的字体缺失而烦恼吗&#xff1f;&#x1f629; 每次打开同事发…...

新手必看:Altium Designer文本框属性面板(Properties Panel)全解,从字体颜色到背景填充

Altium Designer文本框属性全解析&#xff1a;从基础设置到专业图纸优化 在电子设计领域&#xff0c;原理图的可读性直接影响团队协作效率和设计质量。作为Altium Designer(简称AD)的初学者&#xff0c;掌握文本框属性的精细调节是提升图纸专业度的关键一步。本文将带您深入探…...

为什么说“季中调拨”能力,决定了服装企业的生死时速?

在服装行业&#xff0c;有一句老话&#xff1a;“做得好是时装&#xff0c;做不好是库存。”过去&#xff0c;这句话更多指向季末的积压。但今天&#xff0c;随着消费节奏加快、流行周期被压缩到以“周”为单位&#xff0c;真正的决胜点已经前移——季中调拨。季中调拨&#xf…...

Pi0惊艳效果展示:多轮交互式控制——基于历史动作反馈的指令修正

Pi0惊艳效果展示&#xff1a;多轮交互式控制——基于历史动作反馈的指令修正 1. 引言&#xff1a;当机器人学会“思考”与“修正” 想象一下&#xff0c;你告诉家里的机器人&#xff1a;“把桌上的杯子拿过来。”它伸出手&#xff0c;却因为角度偏差&#xff0c;只是碰倒了杯…...

AHT20传感器数据不准?可能是你的CRC校验没做对!一个真实案例的排查与修复

AHT20传感器数据异常&#xff1f;CRC校验可能是你忽略的关键环节 当你在嵌入式项目中集成AHT20温湿度传感器时&#xff0c;是否遇到过数据偶尔跳变或明显失真的情况&#xff1f;这个问题困扰过不少开发者&#xff0c;而解决方案往往藏在一个容易被忽视的细节里——CRC校验。让我…...

【标准差 | 平方差 | 均方差】

标准差 标准差差方差针对数据时总体数据的样本数时 标准差 标准差&#xff08;Standard Deviation&#xff09;&#xff0c;又称均方差&#xff0c;但不同于均方误差&#xff08;mean squared error&#xff09; 标准差是数值分散的测量。 标准差的符号是 σ &#xff08;希腊语…...

从‘拉风箱’到‘指哪打哪’:VCM音圈马达如何重塑了我们的手机拍照体验?

从‘拉风箱’到‘指哪打哪’&#xff1a;VCM音圈马达如何重塑了我们的手机拍照体验&#xff1f; 还记得十年前用手机拍运动场景的崩溃体验吗&#xff1f;按下快门后镜头反复伸缩发出"咔咔"声&#xff0c;像老式风箱般迟钝&#xff0c;等对焦完成时孩子早已跑出画面。…...

终极跨平台游戏优化工具迁移指南:从Windows到Linux/macOS的完整解决方案

终极跨平台游戏优化工具迁移指南&#xff1a;从Windows到Linux/macOS的完整解决方案 【免费下载链接】dlss-swapper 项目地址: https://gitcode.com/GitHub_Trending/dl/dlss-swapper DLSS Swapper是一款强大的游戏优化工具&#xff0c;专为管理NVIDIA DLSS、AMD FSR和…...