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

leetcode283-Move Zeroes

这道题目要求把所有的0元素都放到数组末尾,并且不能改变数组其它元素的相对数序,类似这种题目思维一定要往快慢指针上靠,快指针从头到尾遍历,快指针永远去找非0元素,慢指针则从头开始遍历,找到以后交换俩个元素的位置,然后俩个指针分别往前走一步。注意这里如果慢指针的策略是永远去找0元素的话,那么就会涉及到一些和快指针的比较,只有在慢指针比快指针小的时候所指向的元素才可以交换,cpu时间会更高一点

public class moveZeroes {public static void main(String[] args) {int[] arr = {0,1,0,3,12};moveZero(arr);for(int i = 0;i<arr.length;i++) {System.out.println(arr[i]);}}public static void moveZero(int[] arr) {for(int i = 0,j=0;i<arr.length;i++) {if(arr[i] != 0) {int tmp = arr[i];arr[i] = arr[j];arr[j] = tmp;j++;}}}
}

相关文章:

  • vue实现相机拍摄,可录视频、拍照片、前置后置切换(简单小demo)
  • Redis的Hash数据结构中100万对field和value,field是自增时如何优化?优化Hash结构。
  • Git 核心知识
  • idea从零开发Android 安卓 (超详细)
  • 算法系列--动态规划--特殊的状态表示--分析重复子问题
  • python opencv之提取轮廓并拟合圆
  • 智慧公厕,为智慧城市建设注入了新的活力
  • 杰理芯片AC79——物联网远程点亮/关闭LED灯
  • 【力扣每日一题】2908. 元素和最小的山形三元组 I
  • Oracle VM(虚拟机)性能监控工具
  • libevent解析GET参数
  • 基于springboot实现数据库的加解密
  • darknet | 编译darknet报错nvcc fatal: Path to libdevice library not specified
  • Linux shell编程学习笔记43:cut命令
  • 【YOLOv5改进系列(9)】高效涨点----使用CAM(上下文增强模块)替换掉yolov5中的SPPF模块
  • 2017 前端面试准备 - 收藏集 - 掘金
  • Angular 响应式表单之下拉框
  • HashMap剖析之内部结构
  • JavaScript-Array类型
  • Redis中的lru算法实现
  • SpringBoot几种定时任务的实现方式
  • 安装python包到指定虚拟环境
  • 机器学习学习笔记一
  • 简析gRPC client 连接管理
  • 前端性能优化——回流与重绘
  • 前端学习笔记之原型——一张图说明`prototype`和`__proto__`的区别
  • 巧用 TypeScript (一)
  • 实现简单的正则表达式引擎
  • 推荐一款sublime text 3 支持JSX和es201x 代码格式化的插件
  • 微信小程序开发问题汇总
  • 在electron中实现跨域请求,无需更改服务器端设置
  • ### Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLTr
  • #Linux(Source Insight安装及工程建立)
  • #多叉树深度遍历_结合深度学习的视频编码方法--帧内预测
  • #我与Java虚拟机的故事#连载07:我放弃了对JVM的进一步学习
  • $redis-setphp_redis Set命令,php操作Redis Set函数介绍
  • (DFS + 剪枝)【洛谷P1731】 [NOI1999] 生日蛋糕
  • (Python第六天)文件处理
  • (附源码)spring boot智能服药提醒app 毕业设计 102151
  • (附源码)springboot电竞专题网站 毕业设计 641314
  • (附源码)计算机毕业设计SSM智慧停车系统
  • (实战)静默dbca安装创建数据库 --参数说明+举例
  • (四)Controller接口控制器详解(三)
  • .NET CLR Hosting 简介
  • .Net Core和.Net Standard直观理解
  • .NET Core使用NPOI导出复杂,美观的Excel详解
  • .Net IE10 _doPostBack 未定义
  • .NET 中各种混淆(Obfuscation)的含义、原理、实际效果和不同级别的差异(使用 SmartAssembly)
  • .Net下C#针对Excel开发控件汇总(ClosedXML,EPPlus,NPOI)
  • .secret勒索病毒数据恢复|金蝶、用友、管家婆、OA、速达、ERP等软件数据库恢复
  • /etc/shadow字段详解
  • @RequestParam,@RequestBody和@PathVariable 区别
  • [ CTF ] WriteUp- 2022年第三届“网鼎杯”网络安全大赛(白虎组)
  • [1127]图形打印 sdutOJ
  • [AIR] NativeExtension在IOS下的开发实例 --- IOS项目的创建 (一)