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

【力扣100】4.移动零

题目链接
我的题解:

class Solution:def moveZeroes(self, nums: List[int]) -> None:"""Do not return anything, modify nums in-place instead."""# 思路是先计算共有几个0,然后remove几次,再末位加几个0count=0for i in nums:if i ==0:count=count+1for j in range(0,count):nums.remove(0)nums.append(0)

我觉得这个方法太蠢了
想一下双指针的方法

class Solution:def moveZeroes(self, nums: List[int]) -> None:"""Do not return anything, modify nums in-place instead."""# fast指针遇见0向后挪# slow指针遇见0跟fast交换fast=0slow=0for fast in range(len(nums)):if nums[fast]==0:fast+=1else:nums[slow]=nums[fast]fast+=1slow+=1for i in range(slow,len(nums)):nums[i]=0

双指针,最后补0

class Solution:def moveZeroes(self, nums: List[int]) -> None:"""Do not return anything, modify nums in-place instead."""left = 0for i in range(len(nums)):if nums[i] != 0:nums[left], nums[i] = nums[i], nums[left]left += 1

双指针,快指针指到非0,就交换,因为慢指针都会指到0

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

相关文章:

  • Filebeat使用指南
  • 【Vue2】Vue的介绍与Vue的第一个实例
  • 十五届蓝桥杯分享会(一)
  • 原生video设置控制面板controls显示哪些控件
  • openlayers地图使用---跟随地图比例尺动态标绘大小的一种方式2
  • C语言期末考试复习PTA数据类型及表达式-分支结构程序-循环结构-数组经典选择题
  • RHEL8_Linux访问NFS存储及自动挂载
  • python 使用 AppiumService 类启动appium server
  • HbuilderX使用Uniapp+Vue3安装uview-plus
  • 【Android】Java NIO(New I/O)的`Selector`类来实现非阻塞的Socket监听
  • 『亚马逊云科技产品测评』在当前飞速发展的AI人工智能时代云服务技术哪家强?
  • 经典神经网络——ResNet模型论文详解及代码复现
  • OpenCV-Python:DevCloud CodeLab介绍及学习
  • 如何在Linux环境搭建本地SVN服务器并结合cpolar实现公网访问
  • C语言入门课程之课后习题之折半查找法
  • 【CSP】202209-1_如此编码Python实现
  • std::function
  • SQL Server——权限管理
  • 实例解析关于兔鲜登录tab栏切换案例详细讲解!
  • 制作一个RISC-V的操作系统三-编译与链接
  • tmux工具--程序部署在服务器上持久化执行
  • C语言精选——选择题Day39
  • React 笔记 jsx
  • QMenu风格设计qss+阴影
  • temu防窒息警示语贴哪里
  • Maven——坐标和依赖
  • Python中事务的常见用法
  • 蛮力法最大值连续子序问题
  • 多功能智能遥测终端机 5G/4G+北斗多信道 视频采集传输
  • 1.查看表的基本结构,表的详细结构和修改表名