首页 > 编程语言 >力扣238 移动零 Java版本 时间复杂度为O(0)

力扣238 移动零 Java版本 时间复杂度为O(0)

时间:2024-09-12 14:54:34浏览次数:3  
标签:Java temp nums int 复杂度 示例 力扣 ++ 数组

文章目录


题目描述

给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。

请注意 ,必须在不复制数组的情况下原地对数组进行操作。

示例 1:

输入: nums = [0,1,0,3,12]
输出: [1,3,12,0,0]
示例 2:

输入: nums = [0]
输出: [0]

提示:

1 <= nums.length <= 104
-231 <= nums[i] <= 231 - 1

进阶:你能尽量减少完成的操作次数吗?

代码

class Solution {
    public void moveZeroes(int[] nums) {
        //这个题看到一个很好的解法,简而言之就是用j来从前往后记录位置,然后依次把后面的非零的元素移到这个位置
        int j = 0;
        for (int i = 0; i < nums.length; i++) {
            if (nums[i]!=0){
                int temp = nums[i];
                nums[i] = nums[j];
                nums[j] = temp;
                j++;
            }
        }
    }
}

标签:Java,temp,nums,int,复杂度,示例,力扣,++,数组
From: https://blog.csdn.net/m0_47066863/article/details/142150944

相关文章

  • Java学习路线:从零基础到高级开发者的完整指南
    初学者入门指南1.环境搭建安装JDK:下载并安装最新版本的JDK(JavaDevelopmentKit)。配置环境:设置JAVA_HOME环境变量,并将bin目录添加到PATH中。选择IDE:使用Eclipse、IntelliJIDEA或其他任何你喜欢的Java集成开发环境。2.Java基础知识HelloWorld:编写你的第一个Java......
  • Java开发者无痛丝滑入门Python
    哈喽各位道友,经过两周的更新,凡人编程传的第一个“系列”学习笔记《Python基础》已经全部上线啦,现在免费分享给大家,学习路线在下面,点击链接即可跳转对应笔记。这套笔记有什么不一样的地方呢?这套笔记适合有一定Java编程基础的道友,因为笔记语言比较简练,大多只讲重点,避免了啰嗦......
  • Java之UDP端到端通讯基础
    一,发送器代码packagenet.ittimeline.java.network.socket.udp.talk;importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader;importjava.net.DatagramPacket;importjava.net.DatagramSocket;importjava.net.InetSocketAddress;/......
  • 基于java的ssm框架应急资源管理系统
     博主介绍:java高级开发,从事互联网行业六年,熟悉各种主流语言,精通java、python、爬虫、web开发,已经做了六年的程序开发,开发过上千套大学生实战程序,可以定制、也可成品项目,博客中有上百套程序可供参考,欢迎共同交流学习。......
  • Java小白一文讲清Java中集合相关的知识点(九)
    Map和Set常用的APIMap常用APIput(Kkey,Vvalue):将指定的键值对插入到映射中。get(Objectkey):返回与指定键关联的值,如果键不存在则返回null。remove(Objectkey):移除指定键及其对应的值。containsKey(Objectkey):判断是否包含指定的键。containsValue(Object......
  • JAVA面试官问你:CPU狂飙900%,该怎么处理?【转】
    首先,说明一下问题:CPU飙升200%以上是生产容易发生的场景场景:1:MySQL进程飙升900%大家在使用MySQL过程,想必都有遇到过CPU突然过高,或者达到200%以上的情况。数据库执行查询或数据修改操作时,系统需要消耗大量的CPU资源维护从存储系统、内存数据中的一致性。并发量大并且大量SQL性能低......
  • 基于java+SpringBoot+Vue的小徐影城管理系统设计与实现
    开发语言:Java数据库:MySQL技术:SpringBoot+MyBatis工具:IDEA/Ecilpse、Navicat、Maven系统简介小徐影城管理系统是一款基于Java、SpringBoot和Vue.js技术开发的影院管理系统,旨在为用户提供一个便捷、高效的在线购票和影院管理平台。系统通过B/S架构,实现了管理员和用......
  • 【java逆向】3分钟理清Java对象头里面的那些杂事
    原创龙虾编程对象头是一个对象用于保存自身状态的区域,在HotSpot虚拟机中,对象在堆内存中存储的布局可以划分为三个部分:对象头(Header)、实例数据(InstanceData)、对齐填充(Padding),如下如所示:在Java中普通对象和数组对象的对象在布局上存在一定的差异,数组对象相比普通对象多了数......
  • 全国增值税发票查验接口平台-JavaScript发票验真api示例
    全国增值税发票查验接口平台旨在优化纳税服务,加强企业发票管理,确保税收工作的准确性。企业财务可以通过发票查验接口方便快捷的验证增值税发票管理系统开具发票的真伪,以实现发票的自动化管理,减少人工操作失误,提高识别、录入、查验的准确性和工作效率,从而有效防止税务欺诈和逃......
  • 9/12力扣刷题笔记
     动态规划法,时间和空间复杂度均为O(n)此方法超出时间限制。 用滚动数组思想,把空间复杂度优化成O(1) 70.爬楼梯-力扣(LeetCode)官方题解的方法2,3没看。 classSolution{public:stringaddBinary(stringa,stringb){intlen_a=a.length();......