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

【OJ刷题】双指针问题

这里是阿川的博客,祝您变得更强

✨ 个人主页:在线OJ的阿川
💖文章专栏:OJ刷题入门到进阶
🌏代码仓库:


写在开头

现在您看到的是我的结论或想法但在这背后凝结了大量的思考、经验和讨论


在这里插入图片描述

在这里插入图片描述

目录

  • 1.题目介绍
  • 2.题目拆解:
  • 3.具体详情
  • 4.具体代码


1.题目介绍

难度:易
题目练习:移动零
题目信息:给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。请注意 ,必须在不复制数组的情况下原地对数组进行操作。


2.题目拆解:

本质上:是数组划分、数组分块问题
特点是:在制定的标准下,把数组划分成若干个区间
解决方法:双指针算法(利用数组下标来充当指针)


3.具体详情

两个指针作用:

cur:从左往右扫描数组,遍历数组
dest:已处理的区间内,非零元素的最后一个位置(即分界线)
具体如图1所示:
在这里插入图片描述

图1

三个区间:

具体如图2所示:
在这里插入图片描述

图2

如何做到:
cur从前往后遍历的过程中:

1. 遇到零元素: cur++
2.遇到非零元素: swap(dest + 1, cur);
dest++,cur++;


4.具体代码

class Solution {
public:void moveZeroes(vector<int>& nums) {for(int step = -1, cur = 0; cur < nums.size(); cur++)if(nums[cur])swap(nums[++step], nums[cur]); }
};

好的,到此为止啦,祝您变得更强
在这里插入图片描述

在这里插入图片描述

道阻且长 行则将至
个人主页:在线OJ的阿川大佬的支持和鼓励,将是我成长路上最大的动力 在这里插入图片描述

相关文章:

【OJ刷题】双指针问题

这里是阿川的博客&#xff0c;祝您变得更强 ✨ 个人主页&#xff1a;在线OJ的阿川 &#x1f496;文章专栏&#xff1a;OJ刷题入门到进阶 &#x1f30f;代码仓库&#xff1a; 写在开头 现在您看到的是我的结论或想法&#xff0c;但在这背后凝结了大量的思考、经验和讨论 目录 1…...

基于SpringBoot+Vue+MySQL的校园食堂订餐

系统展示 用户前台界面 管理员后台界面 系统背景 随着信息技术的飞速发展和互联网的普及&#xff0c;传统校园食堂的运作模式已难以满足现代学生日益增长的便捷性、个性化需求。学生们希望能够在忙碌的学习生活中&#xff0c;通过更加高效、便捷的方式完成就餐选择&#xff0c;…...

uniapp业务实现

uni.requset添加异常判断提示,以及加载动画 /*** 该函数用于发送网络请求获取数据* 请求失败时会弹出相应的错误提示* 请求成功时会检查返回的数据是否存在错误&#xff0c;并根据错误代码做出相应处理* 如果数据请求成功且无错误&#xff0c;则将返回的数据赋值给pets变量*/fu…...

Windows和Mac命令窗快速打开文件夹

Windows explorer . 和 macOS open . 命令详解 1. Windows explorer . explorer 是 Windows 上的文件资源管理器&#xff0c;用于通过命令行打开文件夹或文件。 常用命令格式&#xff1a; explorer [选项] [目标路径]. 表示当前目录&#xff0c;explorer . 打开当前工作目录…...

智能制造云平台---附源码79117

目 录 摘要 1 绪论 1.1 研究背景和意义 1.2开发技术 1.2.1 Flask框架 1.2.2 Python简介 1.2.3 MySQL数据库 1.3论文结构与章节安排 2系统分析 2.1 可行性分析 2.2总体设计原则 2.3 系统流程分析 2.3.1 用户登录流程 2.3.2 删除信息流程 2.4 系统角色分析 2.5 系…...

降本、创新、合作,谁才是连接器行业破除内卷的关键词?

如果用一个字来评价2024年的汽车行业&#xff0c;那就是「卷」。 ▲中国汽车保有量不断提升 图/Pixabay 长安汽车董事长朱华荣说&#xff1a;“汽车行业的卷&#xff0c;让中国品牌达到了新高度。” 吉利董事长李书福说&#xff1a;“中国汽车工业内卷程度全球第一&#xff0c;…...

可能一拆为二,英特尔为何走到今天这一步?

【科技明说 &#xff5c; 科技热点关注】 近来看到外媒消息说&#xff0c;英特尔迫于经营压力&#xff0c;也不得不铤而走险&#xff0c;欲将英特尔一分为二&#xff0c;即芯片制造与芯片设计分离开&#xff0c;互相剥离&#xff0c;独立发展。 于是乎&#xff0c;英特尔将分拆…...

了解Redis集群概念,集群如何选举主节点

请给胡广一个免费的三连吗&#xff1f;感谢&#xff01; 1. Redis集群 1.1 集群概念 Redis主从架构和Redis集群架构是两种不同的概念&#xff0c;大家刚接触Redis时经常弄混淆。胡广给大家贴下Redis官网对两者的解释。 &#xff08;1&#xff09;Redis主从架构 Redis主从实…...

Ozon跨境商家提升销量的关键:测评补单策略与必备条件

Ozon&#xff0c;自1998年创立以来&#xff0c;已稳居俄罗斯多品类电商领域的领导地位&#xff0c;不仅是俄罗斯最为人所熟知的电商品牌&#xff0c;更是该国电商行业的先驱之一。那么&#xff0c;对于希望在Ozon平台上实现销售爆单的跨境卖家而言&#xff0c;他们需要满足哪些…...

缺乏大模型经验,还有机会吗?

做大模型一年半&#xff0c;经历了无数场面试。 关于经验&#xff0c;我最常听到的候选人(尤其是学生)的说辞是:我没有大模型经验&#xff0c;可以给个机会吗&#xff1f;答案是&#xff0c;我们并不看重候选人的大模型训练经验。这里不是说经验不重要&#xff0c;而是大部分人…...

如何阅读李冬梅老师《数据结构》

根据《如何阅读一本书》第五章&#xff1a;主动阅读的基础&#xff1a;阅读者要提出的4个基本问题&#xff1f; 以第2章&#xff0c;线性表为例&#xff1a; &#xff08;1&#xff09;本章主要在谈些什么&#xff1f;例如第二章简介&#xff0c;读完这一章可以自己试着写个简…...

Python————正则表达式

正则表达式 前言一、正则表达式是什么&#xff1f;二、使用模块 re三、re 模块中的代码图示3.1 re模块匹配单个字符3.2 re模块匹配多个字符3.3 re模块匹配开头跟结尾3.4 re模块匹配分组3.5 扩展: 总结 前言 在实际开发过程中经常会有查找符合某些规则的字符串 比如&#xff1a…...

将你的github仓库设置为web代理

将你的github仓库设置为web代理 废话不多说&#xff0c;直接上步骤 废话不多说&#xff0c;直接上步骤 创建一个仓库&#xff0c;上传静态web。 2. 设置仓库的 page 1&#xff09;点击 “Settings” 如图设置...

CTFHub技能树-Git泄漏-Index

目录 一、Git索引&#xff08;Index&#xff09;的基本概念 二、解题过程 主旨&#xff1a;使用git泄漏恢复源代码 方法一&#xff1a;使用GitHack手动恢复 方法二&#xff1a;直接使用Git_Extract获取网站源代码拿去flag 当前大量开发人员使用git进行版本控制&#xff0c…...

vb.net发送邮件:如何高效地实现邮件发送?

vb.net发送邮件怎么配置服务器&#xff1f;怎么用vb.net发邮件&#xff1f; 如何高效地实现vb.net发送邮件&#xff0c;确保邮件能够快速、稳定地送达&#xff0c;是许多开发者面临的挑战。AokSend将深入探讨vb.net发送邮件的最佳实践&#xff0c;帮助您提升邮件发送的效率和可…...

mycat双主高可用架构部署-水评分表-范围分片配置

MySQL5.7服务器IP是192.168.31.209及192.168.31.210 vi /usr/local/mycat/conf/schema.xml <?xml version"1.0"?> <!DOCTYPE mycat:schema SYSTEM "schema.dtd"> <mycat:schema xmlns:mycat"http://io.mycat/"><schema n…...

开发模型例题

答案&#xff1a;A 解析&#xff1a;瀑布模型是跟对需求明确的项目 增量模型是将需求分为多个阶段&#xff0c;适合一开始需求不明确的 演化模型适合用户需求不清&#xff0c;需求经常变化的情况 螺旋模型适合庞大&#xff0c;复杂且具有高风险的系统...

一文搞懂 TS中 函数、枚举、别名 | TypeScript 入门指南 06

大家好&#xff0c;我是王天~ 这篇文章是 ts入门指南系列中第6 篇&#xff0c;主要讲解ts中的 函数、枚举、别名应用~ 如有不对的地方 欢迎留言反馈哈 函数 在TypeScript中&#xff0c;可选参数和默认参数、剩余参数以及函数重载可以帮助我们更灵活地定义和使用函数。 1、可…...

基于JAVA+SpringBoot+Vue的前后端分离的图书馆管理系统

基于JAVASpringBootVue的前后端分离的图书馆管理系统 前言 ✌全网粉丝20W,csdn特邀作者、博客专家、CSDN[新星计划]导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末附源码下载链接&#…...

基于SpringBoot+Vue的鲜花销售/鲜花商城/花店管理系统

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、SSM项目源码 系统展示 【2025最新】基于JavaSpringBootVueMySQL的鲜花销售…...

北京大学钟亦武老师招收博士生、实习生

点击下方卡片&#xff0c;关注“CVer”公众号AI/CV重磅干货&#xff0c;第一时间送达冲刺今年春招、秋招和实习&#xff01;大家快加入2026年AI校招群&#xff01;赠送今年最大的80元优惠券&#xff0c;大家扫码下方二维码即可加群学习&#xff01;北京大学智能学院介绍&#x…...

SpringBoot 接口全维度性能优化指南

文章目录&#xff1a; 前言 一、背景 1.1 为什么必须做 SpringBoot 接口优化&#xff1f; 1.2 接口优化的核心目标 1.3 本文适用范围 二、核心原理 2.1 接口请求全流程&#xff08;瓶颈定位核心&#xff09; 2.2 核心优化原理总览 2.3 优化优先级&#xff08;生产环境…...

从零到一实战:基于快马平台快速开发企业级jiyutrainer在线评测系统

今天想和大家分享一个很实用的开发经验——如何快速搭建一个企业级的在线编程评测系统。最近正好有个朋友想做一个类似jiyutrainer的编程练习平台&#xff0c;我就用InsCode(快马)平台试了试&#xff0c;效果出乎意料的好。 项目需求分析 首先明确我们需要实现的核心功能&#…...

Java Web 新冠物资管理系统系统源码-SpringBoot2+Vue3+MyBatis-Plus+MySQL8.0【含文档】

摘要 新冠疫情的爆发对全球公共卫生体系提出了严峻挑战&#xff0c;物资管理成为疫情防控中的关键环节。传统物资管理方式依赖人工操作&#xff0c;效率低下且易出错&#xff0c;难以应对突发公共卫生事件中的大规模物资调配需求。为解决这一问题&#xff0c;新冠物资管理系统应…...

swoole方案 WebSocket 下推消息优先级队列

WebSocket 推消息优先级队列 大白话先说清楚 普通弹幕&#xff1a; "哈哈哈哈哈" 优先级 1 (低) 礼物打赏&#xff1a; "送了火箭&#xff01;" 优先级 2 (中) 系统广播&#xff1a; "服务器维护通知" 优先级 3 (高)队列里同…...

禅修运维法:服务器宕机时集体冥想

当技术危机遇上心灵平静在软件测试领域&#xff0c;服务器宕机是高频挑战&#xff0c;不仅中断测试流程&#xff0c;还引发团队压力。传统运维强调硬件修复和代码调试&#xff0c;但忽略了人的因素——压力下的决策失误往往加剧问题。禅修运维法创新性地将佛教禅修融入IT管理&a…...

OpenClaw大模型API怎么选?Kimi与DeepSeek实测指南

最适配 OpenClaw 的大模型 API 是哪个&#xff1f;四款模型实测对比与选型指南&#xff08;2026年3月&#xff09; OpenClaw 内置 ReAct Agent 架构&#xff0c;通过工具调用&#xff08;Tool Use&#xff09;驱动 Shell 执行、文件操作、浏览器控制、截图等自动化任务。模型的…...

UG/NX二次开发必备:C#和C++项目DLL自动签名与拷贝全攻略(附避坑指南)

UG/NX二次开发实战&#xff1a;C#与C项目DLL签名与部署全流程解析 在工业设计软件领域&#xff0c;Siemens NX&#xff08;原Unigraphics&#xff09;的二次开发能力一直是工程师扩展功能、提升效率的重要途径。而DLL文件的数字签名环节&#xff0c;则是确保开发成果能在正版NX…...

解决Redis测试环境搭建难题的try.redis工具:零配置交互式终端功能全解析

解决Redis测试环境搭建难题的try.redis工具&#xff1a;零配置交互式终端功能全解析 【免费下载链接】try.redis A demonstration of the Redis database. 项目地址: https://gitcode.com/gh_mirrors/tr/try.redis 在日常开发中&#xff0c;开发者常常面临Redis测试环境…...

华为光猫配置解密工具技术架构解析与实现机制

华为光猫配置解密工具技术架构解析与实现机制 【免费下载链接】HuaWei-Optical-Network-Terminal-Decoder 项目地址: https://gitcode.com/gh_mirrors/hu/HuaWei-Optical-Network-Terminal-Decoder 在网络设备运维领域&#xff0c;华为光猫配置文件的安全加密机制为设备…...