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 相关文章推荐
javascript[js]获取url参数的代码
Oct 17 Javascript
javaScript array(数组)使用字符串作为数组下标的方法
Nov 19 Javascript
Javascript学习笔记之 对象篇(一) : 对象的使用和属性
Jun 24 Javascript
jQuery/CSS3图片特效插件整理推荐
Dec 07 Javascript
js在指定位置增加节点函数insertBefore()用法实例
Jan 12 Javascript
jquery.validate使用时遇到的问题
May 25 Javascript
jquery基础知识第一讲之认识jquery
Mar 17 Javascript
移动端js触摸事件详解
Sep 18 Javascript
addEventListener()与removeEventListener()解析
Apr 20 Javascript
简单实现JavaScript弹幕效果
Aug 27 Javascript
JavaScript方法_动力节点Java学院整理
Jun 28 Javascript
详解VUE中常用的几种import(模块、文件)引入方式
Jul 03 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
mysql建立外键
2006/11/25 PHP
php生成静态文件的多种方法分享
2012/07/17 PHP
win7+apache+php+mysql环境配置操作详解
2013/06/10 PHP
使用composer 安装 laravel框架的方法图文详解
2019/08/02 PHP
PHP创建XML的方法示例【基于DOMDocument类及SimpleXMLElement类】
2019/09/10 PHP
Javascript 调试利器 Firebug使用详解六
2009/07/05 Javascript
面向对象的javascript(笔记)
2009/10/06 Javascript
javascript 自动填写表单的实现方法
2010/04/09 Javascript
21个值得收藏的Javascript技巧
2014/02/04 Javascript
ext中store.load跟store.reload的区别示例介绍
2014/06/17 Javascript
JS实现跟随鼠标的链接文字提示框效果
2015/08/06 Javascript
JavaScript DOM 学习总结(五)
2015/11/24 Javascript
JavaScript之排序函数_动力节点Java学院整理
2017/06/30 Javascript
微信小程序getPhoneNumber获取用户手机号
2017/09/29 Javascript
AngularJs 终极购物车(实例讲解)
2017/11/08 Javascript
微信小程序项目实践之主页tab选项实现
2018/07/18 Javascript
仿ElementUI实现一个Form表单的实现代码
2019/04/23 Javascript
运用js实现图层拖拽的功能
2019/05/24 Javascript
Vue如何获取数据列表展示
2019/12/11 Javascript
使用JavaScript和MQTT开发物联网应用示例解析
2020/08/07 Javascript
[51:15]2014 DOTA2国际邀请赛中国区预选赛 Orenda VS LGD-GAMING
2014/05/22 DOTA
Python实现模拟时钟代码推荐
2015/11/08 Python
Python字典数据对象拆分的简单实现方法
2017/12/05 Python
使用PyInstaller将python转成可执行文件exe笔记
2018/05/26 Python
python字符串中匹配数字的正则表达式
2019/07/03 Python
Python matplotlib以日期为x轴作图代码实例
2019/11/22 Python
Python time库基本使用方法分析
2019/12/13 Python
浅谈pandas.cut与pandas.qcut的使用方法及区别
2020/03/03 Python
Python DES加密实现原理及实例解析
2020/07/17 Python
python中加背景音乐如何操作
2020/07/19 Python
html5中svg canvas和图片之间相互转化思路代码
2014/01/24 HTML / CSS
VELTRA台湾:世界自由行专家
2017/08/15 全球购物
入党积极分子介绍信
2014/01/17 职场文书
2014国庆黄金周超市促销活动方案
2014/09/21 职场文书
狮子林导游词
2015/02/03 职场文书
httpclient调用远程接口的方法
2022/08/14 Java/Android