首页 > web前端 > js教程 > 正文

介绍js中二分法,去重的实例代码

零下一度
发布: 2017-07-17 16:04:35
原创
1715人浏览过
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		
	</body>
	<script type="text/javascript">
		var arr =[1,2,3,4,5,6,7,8,9,0,8,5,5,4,3];
		//创建一个数组
		function findInArr(arr,n){
			//循环数组中的每一项如果它的每一个i项与n相等就返回继续执行
			for (var i=0;i<arr.length;i++){
				if (arr[i] == n){
					return true;
				}
			}
			    return false;
		}
		function removeDup(arr,s,e){
//			判断这个数组,的开始顺序,和这个数组是不是首项和尾项相等
			if (s>e) {
				return false;
			} else if(s==e){
				return [arr[s]];
			}
//			将数组进行二分,找到中间项,将数组分为两部分
			var c= Math.floor((s+e)/2);
			var l = removeDup(arr,s,c);
			var r = removeDup(arr,c + 1,e);
			for (var i=0;i< r.length; i++) {
				if (!findInArr(l,r[i])) {
					l.push(r[i])
				}
			}
			return l;
		}
		console.log(removeDup(arr,0,arr.length-1))
	</script>
</html>
登录后复制

  算法是一种很奇妙的东西,希望能多多交流。

以上就是介绍js中二分法,去重的实例代码的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号