leetcode_26删除有序数组中的重复项
1. 题意
给定一个重复数组,删除其中的重复项目。
2. 题解
双指针
一个指针指向有序不重复数组的最后一个数,另外一个数遍历整个数组,若两个指针对应用的数不相同,有序数组的指针右移,将数填入。
- 代码一
class Solution {
public:int removeDuplicates(vector<int>& nums) {int sz = nums.size();int cnt = 0;for (int i = 1;i < sz; ++i) {if (nums[i] != nums[cnt]) {nums[++cnt] = nums[i];}}return cnt + 1;}
};
- 通解
只要 n u m s [ l e n − 1 ] ≠ n u m s [ j ] nums[len - 1]\ne nums[j] nums[len−1]=nums[j], 就需要将 n u m s [ j ] nums[j] nums[j]给放入有序数组。推广一下,如果相同的数不超过 k k k个,就只需要 n u m s [ l e n − k ] ≠ n u m s [ j ] nums[len - k] \ne nums[j] nums[len−k]=nums[j]。
class Solution {
public:int removeDuplicates(vector<int>& nums) {int sz = nums.size();int cnt = 1;for (int i = 1;i < sz; ++i) {if (nums[i] != nums[cnt - 1]) {nums[cnt++] = nums[i];}}return cnt;}
};
相关文章:
leetcode_26删除有序数组中的重复项
1. 题意 给定一个重复数组,删除其中的重复项目。 2. 题解 双指针 一个指针指向有序不重复数组的最后一个数,另外一个数遍历整个数组,若两个指针对应用的数不相同,有序数组的指针右移,将数填入。 代码一 class Sol…...
速递丨DeepSeek刚刚成立香港子公司,或因考虑香港上市和招募全球AI人才
图片来源:DeepSeek 根据彭博社和财联社报道,DeepSeek 2月5日在香港成立了两家公司——DeepSeek Limited 和 DeepSeek (HK) Limited。 香港中文大学莊太量教授表示,DeepSeek进军香港将推动该市的金融科技发展。如果DeepSeek考虑在香港上市&a…...
笔灵ai写作技术浅析(六):智能改写与续写
笔灵AI写作中的智能改写和续写技术是其核心功能之一,旨在帮助用户生成高质量、多样化的文本内容。 一、智能改写技术 1. 基本原理 智能改写的目标是在保持原文语义不变的前提下,对文本进行重新表述,生成语法正确、语义连贯且风格多样的新文本。其核心思想是通过语义理解和…...
【在线优化】【有源程序】基于遗传算法(GA)和粒子群优化(PSO)算法的MPPT控制策略
目录 一、背景 二、源程序及结果 2.1 simulink仿真程序 2.2 GA模块源程序 2.3 PSO模块源程序 三、程序运行结果 3.1 基于GA优化的MPPT 3.2 基于PSO优化的MPPT 一、背景 MPPT策略能够显著提高光伏、风电等发电效率,节省大量成本。该策略的经典算法是…...
使用 Three.js 实现热力渐变效果
大家好!我是 [数擎 AI],一位热爱探索新技术的前端开发者,在这里分享前端和 Web3D、AI 技术的干货与实战经验。如果你对技术有热情,欢迎关注我的文章,我们一起成长、进步! 开发领域:前端开发 | A…...
java-异常家族梳理(流程图)
前言: 使用流程图梳理异常,便于理解 梳理: Throwable ├── Error(严重错误,无需捕获) │ ├── OutOfMemoryError │ ├── StackOverflowError │ └── ... ├── Exception(可捕获处理) │ ├── RuntimeException(非检查异常/Unchecked) │ …...
开启蓝耘之旅:DeepSeek R1 模型在智算平台的起步教程
----------------------------------------------------------我的个人主页-------------------- 动动你的手指----------------------------------------点赞👍 收藏❤--------------------------------------------------------------- 引言 在深度学习的广袤领…...
[高等数学]不定积分的概念与性质
一、知识点 (一)原函数与不定积分的概念 定义1(原函数) 如果在区间 I I I 上,可导函数 F ( x ) F(x) F(x) 的导函数为 f ( x ) f(x) f(x),即对任一 x ∈ I x\in I x∈I,都有 F ′ ( x )…...
【算法】【高精度】acwing算法基础 793. 高精度乘法
题目 给定两个非负整数(不含前导 0) A 和 B,请你计算 AB 的值。 输入格式 共两行,第一行包含整数 A,第二行包含整数 B。 输出格式 共一行,包含 AB 的值。 数据范围 1≤A的长度≤100000, 0≤B≤10000 输入样…...
sqlite 查看表结构
在SQLite中,查看表结构通常有以下几种方法: 使用.schema命令 在SQLite的命令行界面中,你可以使用.schema命令加上表名来查看该表的结构。例如,如果你想查看名为your_table_name的表结构,你可以这样做: .s…...
测试中的第一性原理:回归本质的质量思维革命
在软件工程领域,测试活动常被惯性思维和经验主义所主导——测试用例库无限膨胀、自动化脚本维护成本居高不下、测试策略与业务目标渐行渐远。要突破这种困境,第一性原理(First Principles Thinking)提供了独特的解题视角ÿ…...
flink判断两个事件之间有没有超时(不使用CEP)
1.为啥不使用cep呢,cep的超时时间设置不好配置化,无法满足扩展要求 2.超时怎么界定。A事件发生后,过了N时间,还没有收到B事件,算超时。 代码如下: import com.alibaba.fastjson.JSONObject; import lombo…...
二级C语言题解:十进制转其他进制、非素数求和、重复数统计
目录 一、程序填空📝 --- 十进制转其他进制 题目📃 分析🧐 二、程序修改🛠️ --- 非素数求和 题目📃 分析🧐 三、程序设计💻 --- 重复数统计 题目📃 分析🧐 前言…...
打家劫舍3
今天和打家讲一下打家劫舍3 题目: 题目链接:337. 打家劫舍 III - 力扣(LeetCode) 小偷又发现了一个新的可行窃的地区。这个地区只有一个入口,我们称之为root。 除了 root 之外,每栋房子有且只有一个“父“…...
练习题(2025.2.9)
题目背景 “咚咚咚……”“查水表!”原来是查水表来了,现在哪里找这么热心上门的查表员啊!小明感动得热泪盈眶,开起了门…… 题目描述 妈妈下班回家,街坊邻居说小明被一群陌生人强行押上了警车!妈妈丰富…...
【练习】PAT 乙 1074 宇宙无敌加法器
题目 地球人习惯使用十进制数,并且默认一个数字的每一位都是十进制的。而在PAT星人开挂的世界里,每个数字的每一位都是不同进制的,这种神奇的数字称为“PAT数”。每个PAT星人都必须熟记各位数字的进制表,例如“……0527”就表示最…...
网络防御高级02-综合实验
web页面: [FW]interface GigabitEthernet 0/0/0 [FW-GigabitEthernet0/0/0]service-manage all permit 需求一,接口配置: SW2: [Huawei]sysname SW2 1.创建vlan [sw2]vlan 10 [sw2]vlan 20 2.接口配置 [sw2]interface GigabitEther…...
UITableView的复用原理
UITableView复用的基本原理是Cell复用机制,它通过重用已经创建的Cell来减少内存开始并提高性能,避免频繁创建和销毁Cell。 复用的流程 1.队列管理 UITableView维护一个可复用队列(reuse queue),存储离屏的UITableVi…...
SQL条件分支中的大讲究
在SQL中,条件分支用于根据不同的条件执行不同的操作,适用于数据查询、数据更新以及存储过程等场景。合理使用SQL条件分支,可以优化数据操作流程,提高代码的可读性和可维护性。 目录 1. 逻辑判断的基本概念 2. CASE 语句…...
Cherry Studio:一站式多模型AI交互平台深度解析 可配合大模型搭建私有知识库问答系统
Cherry Studio:一站式多模型AI交互平台深度解析 可配合大模型搭建私有知识库问答系统 大模型本地化部署流程可查看文章 3分钟教你搭建属于自己的本地大模型 DeepSeek Cherry Studio地址:https://cherry-ai.com/download Cherry Studio 简介 Cherry S…...
极速体验OpenClaw:星图平台nanobot镜像10分钟入门
极速体验OpenClaw:星图平台nanobot镜像10分钟入门 1. 为什么选择云端沙盒体验OpenClaw 作为一个长期关注AI自动化工具的技术爱好者,我一直在寻找一个既安全又高效的本地AI助手解决方案。OpenClaw的出现让我眼前一亮,但本地部署的复杂环境配…...
vLLM-v0.17.1与卷积神经网络(CNN)结合:多模态推理架构探索
vLLM-v0.17.1与卷积神经网络结合:多模态推理架构探索 1. 前沿技术融合带来的突破 当视觉理解遇上语言推理,会产生怎样的化学反应?我们最近尝试将vLLM-v0.17.1大语言模型与卷积神经网络(CNN)图像编码器相结合…...
OpenClaw硬件控制实验:ollama-QwQ-32B通过串口操控智能家居
OpenClaw硬件控制实验:ollama-QwQ-32B通过串口操控智能家居 1. 为什么选择OpenClaw做硬件控制 去年冬天的一个深夜,我被空调定时关闭后冻醒的经历,让我开始思考如何让AI真正理解物理世界。传统智能家居App的固定场景模式已经不能满足我的需…...
高效音频获取与资源管理:喜马拉雅下载工具全解析
高效音频获取与资源管理:喜马拉雅下载工具全解析 【免费下载链接】xmly-downloader-qt5 喜马拉雅FM专辑下载器. 支持VIP与付费专辑. 使用GoQt5编写(Not Qt Binding). 项目地址: https://gitcode.com/gh_mirrors/xm/xmly-downloader-qt5 在数字内容消费时代&a…...
【TC3xx芯片】Endinit机制实战:从解锁到上锁的完整代码解析
1. TC3xx芯片Endinit机制的核心作用 在嵌入式系统开发中,寄存器保护是确保系统稳定性的关键机制。TC3xx系列芯片采用的Endinit(End of initialization)保护方案,就像给重要寄存器装了一把智能密码锁。想象一下,你家的保…...
Debian GNU/Linux12高效运维指南(网络配置、远程管理、软件更新与安全防护)
1. Debian GNU/Linux12网络配置实战 刚接触Debian GNU/Linux12的朋友们,网络配置可能是你们遇到的第一个挑战。别担心,我会用最直白的方式带你们搞定这个环节。网络配置就像给新房子拉网线,得先把基础线路接好,后续的上网、远程控…...
生物信息学入门:手把手教你用Java实现Needleman-Wunsch序列比对算法
生物信息学实战:用Java构建Needleman-Wunsch全局序列比对工具 第一次接触DNA序列比对时,看着两条看似杂乱无章的碱基序列在算法处理后突然呈现出惊人的相似性,那种发现隐藏规律的震撼感至今难忘。作为生物信息学领域最经典的算法之一…...
TSDoc贡献指南:如何为开源文档标准做出贡献的完整教程
TSDoc贡献指南:如何为开源文档标准做出贡献的完整教程 【免费下载链接】tsdoc A doc comment standard for TypeScript 项目地址: https://gitcode.com/gh_mirrors/ts/tsdoc TSDoc是一个为TypeScript设计的文档注释标准,旨在为不同的工具提供统一…...
如何让2015年前的MacBook Pro焕发新生?OpenCore Legacy Patcher完全指南
如何让2015年前的MacBook Pro焕发新生?OpenCore Legacy Patcher完全指南 【免费下载链接】OpenCore-Legacy-Patcher 体验与之前一样的macOS 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher 你是否还在为手中的老款Mac无法升级到…...
RMBG-2.0 API调用教程:Python requests调用+返回透明PNG二进制流解析
RMBG-2.0 API调用教程:Python requests调用返回透明PNG二进制流解析 1. 快速了解RMBG-2.0 RMBG-2.0是一款轻量级的AI图像背景去除工具,它能在保持高精度的同时,大幅降低硬件要求。无论你是开发者还是普通用户,都能轻松上手使用。…...
