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

力扣双指针-算法模版总结

lc-15.三数之和 (时隔13天)

目前可通过,想法上无逻辑问题,一点细节小错误需注意即可

lc-283.移动零(时隔16天)

总结:观察案例直觉就是双指针遇零交换,两次实现都通过了,且思想与题解一致,但是时间复杂度较高,没有题解巧妙,代码实现的方式会影响到时间复杂度,需要想到一个巧妙的代码实现,才能使时间复杂度为O(n);

思路:一个指针从首位开始指向,如果遇到0停下,另一个指针则寻找不是0的,找到后二者进行交换即可,首位指针i走到头即可结束
分析:设置两个指针,其中一个指针可以用for循环i代表,另一个指针初始化一个变量即可。
寻找非零指针用for循环中的i代表则更好,条件结束时说明数组里面已经无非零元素了

class Solution {public void moveZeroes(int[] nums) {if(nums==null) {return;}//两个指针i和jint j = 0;for(int i=0;i<nums.length;i++) {//当前元素!=0,就把其交换到左边,等于0的交换到右边if(nums[i]!=0) {int tmp = nums[i];nums[i] = nums[j];nums[j++] = tmp;}}}
}	

http://www.lryc.cn/news/517291.html

相关文章:

  • 解释一下:运放的输入偏置电流
  • Windows 11 上通过 WSL (Windows Subsystem for Linux) 安装 MySQL 8
  • 信用租赁系统助力企业实现免押金租赁新模式
  • OSPF特殊区域(open shortest path first LSA Type7)
  • Element-plus表单总结
  • unity学习13:gameobject的组件component以及tag, layer 归类
  • 51单片机——中断(重点)
  • 企业级Java 实体对象类定义规范
  • 【网络云SRE运维开发】2025第2周-每日【2025/01/07】小测-【第7章 GVRP链路捆绑】理论和实操
  • 蓝桥杯算法|练习记录
  • C语言 扫雷程序设计
  • CSS语言的文件操作
  • 前端-计算机网络篇
  • 行为分析:LSTM、3D CNN、SlowFast Networks。这三者的优缺点
  • 【HarmonyOS NEXT】鸿蒙应用使用后台任务之长时任务,解决屏幕录制音乐播放等操作不被挂起
  • STM32-WWDG/IWDG看门狗
  • 基于视觉惯性 SLAM(VSLAM)、相机和 IMU 数据的融合执行 6 自由度位姿跟踪
  • Matlab仿真径向受压圆盘光弹图像
  • 网络安全抓包
  • WebSocket 测试调试:工具与实践
  • ArmSoM RK3588/RK3576核心板,开发板网络设置
  • 【学Rust开发CAD】1 环境搭建
  • 数据结构与算法之二叉树: LeetCode 108. 将有序数组转换为二叉搜索树 (Ts版)
  • Java 多线程之@Async
  • 代码随想录day38 动态规划6
  • LabVIEW无标题的模态VI窗口的白框怎么去除?
  • iOS - 原子操作
  • Go语言的语法
  • 【MySQL 保姆级教学】用户管理和数据库权限(16)
  • 什么是 ES6 “模板语法” ?