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

leetcode-hot100(283.移动零)

在这里插入图片描述

方法一(遍历两次):

我们可以直接遍历整个数组,将非0元素赋值给另一个数组,之后再在该数组后面补0

class Solution {public void moveZeroes(int[] nums) {int j=0;for(int i = 0 ; i < nums.length ; i ++){if(nums[i]!=0){nums[j]=nums[i];j++;}for(int i=j;i<nums.length;i++){nums[i]=0;}}
}

方法二(遍历一次):

我们定义左右指针,左指针代表已经处理好的数组的尾部,右指针代表未处理数组的头部。如果右指针所指向的元素不为0,则与左指针代表的元素交换位置。并且左右指针都向后移动一位。否则不交换元素,并且只有右指针向右移动一位

class Solution {public void moveZeroes(int[] nums) {int left=0,right=0;for(int i=0;i<nums.length;i++){if(nums[right]!=0){swap(nums,left,right);left++;}right++;}   		 }public void swap(int[] nums,int left,int right){int temp=nums[left];nums[left]=nums[right];nums[right]=temp;}
}
http://www.lryc.cn/news/585549.html

相关文章:

  • 力扣面试150(29/100)
  • OA系统中的搜索功能方案:简单搜索vs高级搜索
  • SpringDataRedis入门
  • c++——浅拷贝和深拷贝、浅赋值和深赋值
  • Django快速入门搭建网站
  • 经典同步问题详解
  • 液冷智算数据中心崛起,AI算力联动PC Farm与云智算开拓新蓝海(二)
  • Apache Cloudberry 向量化实践(三)重塑表达式构建路径:Gandiva 优化实战
  • 2D下的几何变换(C#实现,持续更新)
  • SpringBoot或OpenFeign中 Jackson 配置参数名蛇形、小驼峰、大驼峰、自定义命名
  • SpringCloud之Ribbon
  • BootstrapBlazor与JS互调
  • Semi-Supervised Single-View 3D Reconstruction via Prototype Shape Priors
  • 小智AI模型接入MCP
  • 【一起来学AI大模型】微调技术:LoRA(Low-Rank Adaptation) 的实战应用
  • SQL Server通过CLR连接InfluxDB实现异构数据关联查询技术指南
  • SpringBoot JWT
  • Rust与UE5高效集成实战
  • uniapp制作一个个人页面
  • ffmpeg-api记录
  • UC浏览器PC版自2016年后未再更新不支持vue3
  • 小旺AI截图1.2.1版本上线:新增录屏音频、Mac长截屏
  • Docker高级管理--Dockerfile 镜像制作
  • 手把手一起使用Miniforge3+mamba平替Anaconda(Win10)
  • 机器学习week2-线性回归加强
  • Java的extends通配符
  • netdxf—— CAD c#二次开发之(netDxf 处理 DXF 文件)
  • 和鲸社区深度学习基础训练营2025年关卡2(3)pytorch
  • 利用Claude code,只用文字版系统设计大纲,就能轻松实现系统~
  • 免费应用分发平台的安全漏洞和防护机制是什么?