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

力扣 283.移动零 (双指针)

文章目录

  • 题目介绍
  • 题解

题目介绍

在这里插入图片描述

题解

使用双指针,左指针指向当前已经处理好的序列的尾部,右指针指向待处理序列的头部。

右指针不断向右移动,每次右指针指向非零数,则将左右指针对应的数交换,同时左指针右移。

注意到以下性质:

  1. 左指针左边均为非零数;
  2. 左指针到右指针之间均为零。

因此每次交换,都是将左指针的零与右指针的非零数交换,且非零数的相对顺序并未改变。
代码如下:

class Solution {public void moveZeroes(int[] nums) {int l = 0;for (int r = 0; r < nums.length; r++) {if (nums[r] != 0) {// 交换 nums[r] 和 nums[l]int tmp = nums[r];nums[r] = nums[l];nums[l] = tmp;l++;}}}
}

相关文章:

  • 怎么开发一个网络协议模块(C语言框架)之(三) 全局实例
  • 计算机网络期末复习资料
  • 《Java vs Go vs C++ vs C:四门编程语言的深度对比》
  • 2025年渗透测试面试题总结-匿名[社招]安全工程师(中级红队)(题目+回答)
  • JS 中判断 null、undefined 与 NaN 的权威方法及场景实践
  • SQL 语言
  • Transformer 架构学习笔记
  • 楼宇自控成建筑领域关键技术,为实现建筑碳中和注入强劲技术动能
  • AI硬件革命:OpenAI“伴侣设备”——从概念到亿级市场的生态重构
  • uniapp-商城-66-shop(2-品牌信息显示,数据库读取的异步操作 放到vuex actions)
  • 数据结构与算法——链式二叉树
  • keycloak获取用户信息(go实现获取keycloak用户信息)
  • QGIS新手教程:两种方法创建点图层(手动添加 + 表格导入),支持经纬度定位与查找
  • 深度学习:从入门到实践(深度剖析版)
  • 构建Harbor私有镜像库
  • LangGraph:人工干预与自动化结合
  • 【Matlab】雷达图/蛛网图
  • HarmonyOS实战:高德地图定位功能完整流程详解
  • Shell三剑客之awk
  • DeepSeek智能对话助手项目
  • 微信公众号如何快速涨粉/百度seo营销
  • 想找做海报的超清图片去哪个网站找/关键词优化意见
  • 网站备案没有固定电话/西安seo王尘宇
  • 做网站卖掉/公司推广
  • wordpress标签归档/seo搜索排名优化是什么意思
  • 网页设计排版布局/seo专员工作容易学吗