算法题(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的个数,最后再末尾添加。

相关文章
|
29天前
|
算法
算法题(8)
算法题(8)
11 4
|
3月前
|
存储 算法 网络安全
|
3月前
|
存储 传感器 编解码
|
4月前
|
算法
一道算法题
一道算法题
17 0
推公式算法的实现
推公式算法的实现
推公式算法的实现
拓展欧几里得算法
拓展欧几里得算法
80 0
|
设计模式 缓存 算法
算法总结
历经两个月的时间,将算法知识重新梳理完成,整个过程挺累的,每天只能晚上或者周六周日梳理一部分,虽然占用了大量的休息时间,不过整个过程很充实,而且也重新学到了不少东西。
|
算法 前端开发 rax
举轻若重,于无声处听惊雷,那些平平无奇的伟大算法
遥想笔者读大学时在技术讨论时多是储如i+=(++i)+(i++)之类的孔乙己式的问题,而最近我们关注的热点要不是删库跑路坐牢的程序员,要不是员工离职倾向分析系统;而反观国外大神的博客,要不就是这种切入点非常简单,但是最终能够升华至编程之道层面的举轻若重的文章,要不就是秀出那些智商碾压的神仙代码,从这个角度上看我们国内的IT技术氛围还有极大的提升空间。
举轻若重,于无声处听惊雷,那些平平无奇的伟大算法
|
算法
插值查找算法
插值查找算法
218 0
|
存储 人工智能 算法