怎么用js找出丢失的数字
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,本篇内容主要讲解"怎么用js找出丢失的数字",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"怎么用js找出丢失的数字"吧!题目:有一组数字,从1到n(假设n=
千家信息网最后更新 2026年10月31日怎么用js找出丢失的数字
本篇内容主要讲解"怎么用js找出丢失的数字",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"怎么用js找出丢失的数字"吧!
题目:有一组数字,从1到n(假设n=10000),从中任意删除了3个数,顺序也被打乱,剩余数字放在一个n-3的数组里,请找出丢失的数字,要求算法比较快。
方法一,(我写的程序):
var ary = [1, 5, 7, 6, 4, 8, 10]; var n = ary.length + 3; var newAry = []; [xss_clean]("假设n=" + n + "
"); ary.sort(function(a, b){ return a - b; }); [xss_clean]("初始数组:" + ary + "
"); for(var i = 1, j=0; i <= n; i ++,j++){ var diff = ary[j] - i; if(!ary[j]){ newAry.push(i); } else if(diff > 0){ for(var k = 0; k < diff; k ++){ newAry.push(i++); } } } //alert(newAry); [xss_clean]ln("缺少的数:" + newAry);下面是另外两位工程师给出的答案(本文的***会给出一位网友对三种实现的效果测试对比)
方法二,
var n = 10; var oldArr = [5,1,6,3,7,8,10];//缺失的源数组997个数; var newArr = Array(11); var lostArr = [];//要找的数的数组 for(var i = 0; i < n-3; i++) { newArr[oldArr[i]] = 1; } for(var j = 0; j < newArr.length; j++) { if(!newArr[j]) { lostArr.push(j); } } lostArr.shift(0); alert(lostArr);方法三,
var num = [2,1,3,5,4,6,7,9,10,11,12,14,15,17,18,19,20,22,23,21]; numnum = num.sort(function(a,b){return a-b}); var y={}; for(var i=0;i有位网友对上面三种方法进行了运算时间的测试(为了测试效果明显,他将数据量增加到了十万条),测试效果如下:
方法一,200ms左右;方法二,70ms左右;方法三,260ms左右。
到此,相信大家对"怎么用js找出丢失的数字"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
方法
数字
数组
测试
效果
个数
内容
网友
学习
实用
明显
更深
万条
从中
兴趣
实用性
实际
工程
工程师
操作简单
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
瑰夏咖啡
云信互联网科技有限公司
新华互联网科技学院
盈实互联网科技
北京互联网科技公司
华宇互联网科技
猪兼强互联网科技
善班互联网科技
互联网与未来科技
成都狮子座互联网科技
科技类的互联网平台
互联网科技创新企业排名
中国最先进互联网科技公司
福建科技产业互联网发展
河南猎农互联网科技有限公司
消费医药和互联网科技
互联网新科技动漫ppt素材
广州新华互联网科技学校电竞方面
东营紫格互联网科技
互联网科技接地气
天津市摩尔互联网科技
互联网科技开发公司
互联网科技公司怎么样
长亮科技 互联网金融
互联网科技宣传片
昭通互联网科技选哪家
岳阳华臻互联网科技有限公司
长沙茂晟互联网科技有限公司
厦门江牛科技互联网
平安好医生打造互联网科技医疗