JavaScript获取两个数组交集的方法


Posted in Javascript onJune 09, 2015

本文实例讲述了JavaScript获取两个数组交集的方法。分享给大家供大家参考。具体如下:

这里传入的数组必须是已经排过序的

/* finds the intersection of 
 * two arrays in a simple fashion. 
 *
 * PARAMS
 * a - first array, must already be sorted
 * b - second array, must already be sorted
 *
 * NOTES
 *
 * Should have O(n) operations, where n is 
 *  n = MIN(a.length(), b.length())
 */
function arrayIntersection(a, b)
{
 var ai=0, bi=0;
 var result = new Array();
 while( ai < a.length && bi < b.length )
 {
   if (a[ai] < b[bi] ){ ai++; }
   else if (a[ai] > b[bi] ){ bi++; }
   else /* they're equal */
   {
    result.push(a[ai]);
    ai++;
    bi++;
   }
 }
 return result;
}
console.log(arrayIntersection([1,2,3],[2,3,4,5,6]));//[2,3]

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
改进:论坛UBB代码自动插入方式
Dec 22 Javascript
javascript 进阶篇3 Ajax 、JSON、 Prototype介绍
Mar 14 Javascript
jQuery+HTML5实现图片上传前预览效果
Aug 20 Javascript
JavaScript数据推送Comet技术详解
Apr 07 Javascript
JS实现全屏的四种写法
Dec 30 Javascript
详解Vue2.X的路由管理记录之 钩子函数(切割流水线)
May 02 Javascript
Angular 开发学习之Angular CLI的安装使用
Dec 31 Javascript
用node开发并发布一个cli工具的方法步骤
Jan 03 Javascript
小程序中canvas的drawImage方法参数使用详解
Jul 04 Javascript
Vue插件之滑动验证码
Sep 21 Javascript
JavaScript中交换值的10种方法总结
Aug 18 Javascript
详解vue3.0 的 Composition API 的一种使用方法
Oct 26 Javascript
JavaScript实现函数返回多个值的方法
Jun 09 #Javascript
JavaScript中的getDay()方法使用详解
Jun 09 #Javascript
JavaScript中用getDate()方法返回指定日期的教程
Jun 09 #Javascript
JavaScript的Date()方法使用详解
Jun 09 #Javascript
Javascript监视变量变化的方法
Jun 09 #Javascript
简介JavaScript中的unshift()方法的使用
Jun 09 #Javascript
JavaScript中的splice()方法使用详解
Jun 09 #Javascript
You might like
php中将图片gif,jpg或mysql longblob或blob字段值转换成16进制字符串
2011/08/23 PHP
Symfony核心类概述
2016/03/17 PHP
php外部执行命令函数用法小结
2016/10/11 PHP
Javascript YUI 读码日记之 YAHOO.util.Dom - Part.2 0
2008/03/22 Javascript
关于IE7 IE8弹出窗口顶上
2008/12/22 Javascript
JavaScript组件焦点与页内锚点间传值的方法
2015/02/02 Javascript
javascript中scrollTop详解
2015/04/13 Javascript
javascript中call apply 的应用场景
2015/04/16 Javascript
JavaScript去除数组里重复值的方法
2015/07/13 Javascript
jQuery实现自动与手动切换的滚动新闻特效代码分享
2015/08/27 Javascript
Bootstrap实现带动画过渡的弹出框
2016/08/09 Javascript
浅谈jquery选择器 :first与:first-child的区别
2016/11/20 Javascript
原生js实现日期计算器功能
2017/02/17 Javascript
Extjs表单输入框异步校验的插件实现方法
2017/03/20 Javascript
jQuery EasyUI 组件加上“清除”功能实例详解
2017/04/11 jQuery
js中apply与call简单用法详解
2017/11/06 Javascript
小程序如何支持使用 async/await详解
2019/09/12 Javascript
vuex存储token示例
2019/11/11 Javascript
将Python中的数据存储到系统本地的简单方法
2015/04/11 Python
python使用正则表达式替换匹配成功的组并输出替换的次数
2017/11/22 Python
python2.7 json 转换日期的处理的示例
2018/03/07 Python
将python文件打包exe独立运行程序方法详解
2020/02/12 Python
python matplotlib:plt.scatter() 大小和颜色参数详解
2020/04/14 Python
Python-openpyxl表格读取写入的案例详解
2020/11/02 Python
Expedia英国:全球最大的在线旅游公司
2017/09/07 全球购物
Shopee印度尼西亚:东南亚与台湾市场最大电商平台
2018/06/17 全球购物
美国知名的旅游网站:OneTravel
2018/10/09 全球购物
使用索引(Index)有哪些需要考虑的因素
2016/10/19 面试题
机械专业应届生求职信
2013/09/21 职场文书
《雨霖铃》教学反思
2014/02/22 职场文书
80后职场人的职业生涯规划
2014/03/08 职场文书
护理人员的自我评价分享
2014/03/15 职场文书
幼儿园大班开学教师寄语
2014/04/03 职场文书
电钳工人个人求职信
2014/05/10 职场文书
医德医魂心得体会
2014/09/11 职场文书
教师节班会开场白
2015/06/01 职场文书