首页 > 其他分享 >283. 移动零

283. 移动零

时间:2024-03-26 09:23:49浏览次数:13  
标签:right nums int 指针 ++ 283 移动 left

283. 移动零

image-20240318104746131

自己的

思路是双指针,右指针用来找非零元素,找到后赋值给左指针,保证左指针的左面都是非零元素。遍历到最后,让左指针本身和右边全为零即可

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

官方的

class Solution {
    public void moveZeroes(int[] nums) {
        int n = nums.length, left = 0, right = 0;
        while (right < n) {
            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;
    }
}

同样是双指针解法,但官方用了交换元素

标签:right,nums,int,指针,++,283,移动,left
From: https://www.cnblogs.com/lmc7/p/18095868

相关文章

  • CSCI 5708移动计算
    CSCI4176/CSCI5708移动计算截止日期:2023年11月14日星期日下午11点59分提交:在Brightspace请阅读-所有课业的一般重要说明:•对于要求您进行在线搜索的研究类型ques/ons或ques/ons,请确保您的答案中正确引用了所有参考文献。使用IEEE参考样式。•请记住,不能仅仅因为引用了参考文......
  • 移动宽带光猫—获取超级管理员密码教程
    设备名称:吉比特无源光纤接入用户端设备(GPONONU)设备类型:中国移动智能家庭网关类型八设备型号:H5-8默认终端配置地址:192.168.1.1默认终端配置账号:user默认终端配置密码:************ 第一步、先用普通用户登录http://192.168.1.1输入账号:user输入密码:*******......
  • 简单几步为APP搭建移动直播功能——智密腾讯云直播组件简介
    随着5G移动网络技术的成熟,视频直播已经不再局限于WIFI 环境下。即使在户外,当前的4G和5G信号覆盖也足够支持用户观看直播,并在直播间进行留言、连线、点赞和赠送礼物。因此添加直播功能就是现在很多已上线的APP中比较广泛的需求。在目前的支持直播的技术提供商中,腾讯云已经有了比......
  • 基于VB6的磁性移动窗体 - 开源研究系列文章
          这次继续整理代码。这个磁性窗体是以前大学的时候开发的,当时模仿的Winamp的效果进行的编程。当时的时候有WindowsAPI函数能够进行处理,但是XP的年代,那个API只是移动的虚框,而不是移动窗体,于是就进行了窗体移动的开发,同时结合API函数进行了编码,在窗体移动的时候能够磁......
  • 在Linux中,如何在Linux下移动、复制和删除文件或目录?
    在Linux系统中,移动、复制和删除文件或目录的操作主要通过命令行工具完成,以下是具体命令和用法:1.移动文件或目录(mv)移动单个文件:mvoldfilenewfile此命令会将文件oldfile改名为newfile,相当于在同一个目录内重命名文件。如果你想将文件移动到另一个目录中:mvoldfile/pa......
  • 移动无线信道衰落原因、分类及补偿技术
    无线电波在这种传播环境下受到的影响主要表现在如下几个方面:随信号传播距离变化而导致的传播损耗,即自由空间传输损耗;由于传播环境中的地形起伏、建筑物及其他障碍物对电磁波的遮蔽所引起的损耗,一般称为阴影衰落;无线电波在传播路径上受到周围环境中地形地物的作用而产生的反射、......
  • 毕业设计3283基于微信的选修课考勤签到小程序的设计与实现【源代码+文档+调试+讲解视
    摘要本文旨在设计一个基于微信的选修课考勤签到小程序,实现服务器端、教师模块和学生模块的功能需求。通过详细的功能需求分析、数据库设计、界面设计以及测试和优化,本文将为该小程序的开发提供全面的指导。开发技术微信小程序;JSP技术;JAVA语言;MYSQL数据库微信小程序微信......
  • 移动端 页面适配 原生js及lib-flexible 插件
    1.js原生;(function(win,doc){change()functionchange(){varremSize=window.innerWidth/7.5||50/*设计稿是以width=750px为基准的*/document.querySelector('html').style.fontSize=(remSize>100?100:remSize)+'px'}......
  • 【性能测试】移动测试md知识总结第2篇:主流移动端自动化测试工具,学习目标【附代码文档
    移动测试完整教程(附代码资料)主要内容讲述:移动端测试课程介绍,移动端测试知识概览学习主要内容,学习目标,学习目标,1.window安装andorid模拟器。主流移动端自动化测试工具,Appium环境搭建学习目标,学习目标,学习目标,1.Appium背景介绍。app元素信息操作,元素事件操作学习目标,学习......
  • 记忆化搜索 —— Leetcode 2684. 矩阵中移动的最大次数
    题目如下:给你一个下标从 0 开始、大小为 mxn 的矩阵 grid ,矩阵由若干 正 整数组成。你可以从矩阵第一列中的 任一 单元格出发,按以下方式遍历 grid :从单元格 (row,col) 可以移动到 (row-1,col+1)、(row,col+1) 和 (row+1,col+1) 三个单元......