算法题(2)

简介: 算法题(2)

题目

给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。
请注意 ,必须在不复制数组的情况下原地对数组进行操作。

解题

function(nums) {
   
    let count = 0;
    for(let i=0;i<nums.length;i++){
   
        if(nums[i] === 0){
   
            nums.splice(i,1);
            i--;
            count++;
        }
    }
    for(let i=0;i<count;i++){
   
        nums.push(0);
} 

};

解析

题目需要在原数组上操作,删除数组的方法splice,使用count记录删除0的个数,最后再末尾添加。

相关文章
|
7月前
|
缓存 NoSQL Linux
Linux系统内存使用优化技巧
交换空间(Swap)的优化 禁用 Swap sudo swapoff -a 作用:这个命令会禁用系统中所有的 Swap 空间。swapoff 命令用于关闭 Swap 空间,-a 参数表示关闭 /etc/fstab 文件中配置的所有 Swap 空间。 使用场景:在高性能应用场景下,比如数据库服务器或高性能计算服务器,禁用 Swap 可以减少磁盘 I/O,提高系统性能。
282 3
|
网络协议 Docker 容器
使用CoreDNS自建dns
使用CoreDNS自建dns
327 3
|
存储 Linux 程序员
tar命令详解:linux文件打包神器
tar命令详解:linux文件打包神器
|
11月前
|
缓存
vue2进阶篇:vue-router之路由的query参数
vue2进阶篇:vue-router之路由的query参数
210 2
|
机器学习/深度学习 存储 算法框架/工具
【深度学习】猫狗识别TensorFlow2实验报告
本文介绍了使用TensorFlow 2进行猫狗识别的实验报告,包括实验目的、采用卷积神经网络(CNN)进行训练的过程,以及如何使用交叉熵作为损失函数来识别猫狗图像数据集。
442 1
|
存储 机器学习/深度学习 缓存
如何使用PySpark进行离线数据分析?
【6月更文挑战第15天】如何使用PySpark进行离线数据分析?
194 10
|
Ubuntu 安全 Java
在Ubuntu 14.04上安装Apache Tomcat 8的方法
在Ubuntu 14.04上安装Apache Tomcat 8的方法
98 0
|
机器学习/深度学习 传感器 人工智能
智能家居技术的演进与未来
本文深入探讨了智能家居技术从诞生到现代的演变历程,并展望了其未来的发展方向。通过分析智能家居系统的核心组成、关键技术以及市场趋势,揭示了这一领域面临的挑战和机遇。文章旨在为读者提供一个全面的视角,理解智能家居技术如何塑造我们的日常生活,并对未来的居住环境产生影响。
286 0
|
人工智能 算法 物联网
求解三维装箱问题的启发式深度优先搜索算法(python)
求解三维装箱问题的启发式深度优先搜索算法(python)
334 0
|
网络安全