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返回顶部效果(自写代码)
Jan 06 Javascript
javascript屏蔽右键代码
May 15 Javascript
JQuery导航菜单选择特效
Apr 11 Javascript
深入理解$.each和$(selector).each
May 15 Javascript
在Javascript操作JSON对象,增加 删除 修改的简单实现
Jun 02 Javascript
JavaScript中点击事件的写法
Jun 28 Javascript
JS图片压缩(pc端和移动端都适用)
Jan 12 Javascript
Javascript前端经典的面试题及答案
Mar 14 Javascript
谈谈React中的Render Props模式
Dec 06 Javascript
详解VUE里子组件如何获取父组件动态变化的值
Dec 26 Javascript
Angular请求防抖处理第一次请求失效问题
May 17 Javascript
JS字符串和数组如何实现相互转化
Jul 02 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 和 XML: 使用expat函数(三)
2006/10/09 PHP
深入PHP获取随机数字和字母的方法详解
2013/06/06 PHP
实现WordPress主题侧边栏切换功能的PHP脚本详解
2015/12/14 PHP
JavaScript 小型打飞机游戏实现原理说明
2010/10/28 Javascript
Javascript将string类型转换int类型
2010/12/09 Javascript
jQuery的图片滑块焦点图插件整理推荐
2014/12/07 Javascript
javascript操作数组详解
2014/12/17 Javascript
JavaScript里实用的原生API汇总
2015/05/14 Javascript
jquery实现的淡入淡出下拉菜单效果
2015/08/25 Javascript
基于jquery实现智能提示控件intellSeach.js
2016/03/17 Javascript
jQuery实现下拉菜单的实例代码
2017/06/19 jQuery
利用express启动一个server服务的方法
2017/09/17 Javascript
浅谈vue-router 路由传参的方法
2017/12/27 Javascript
vue和webpack打包项目相对路径修改的方法
2018/06/15 Javascript
详解vue-element Tree树形控件填坑路
2019/03/26 Javascript
vue的注意规范之v-if 与 v-for 一起使用教程
2019/08/04 Javascript
js简单实现自动生成表格功能示例
2020/06/02 Javascript
Vue看了就会的8个小技巧
2021/01/21 Vue.js
浅谈Python脚本开头及导包注释自动添加方法
2018/10/27 Python
Python 将Matrix、Dict保存到文件的方法
2018/10/30 Python
python 删除excel表格重复行,数据预处理操作
2020/07/06 Python
Python中Qslider控件实操详解
2021/02/20 Python
伦敦最有品味的百货:Liberty London
2016/11/12 全球购物
波兰品牌内衣及泳装网上商店:Astratex.pl
2017/02/03 全球购物
英国森林假期:Forest Holidays
2021/01/01 全球购物
学校联谊活动方案
2014/02/15 职场文书
《我为你骄傲》教学反思
2014/02/20 职场文书
实习会计求职自荐信范文
2014/03/10 职场文书
网站客服岗位职责
2014/04/05 职场文书
交警作风整顿剖析材料
2014/10/11 职场文书
2014年助理工程师工作总结
2014/11/14 职场文书
西安兵马俑导游词
2015/02/02 职场文书
义诊活动通知
2015/04/24 职场文书
历史博物馆观后感
2015/06/05 职场文书
导游词之吉林花园山
2019/10/17 职场文书
你离财务总监还有多远?速览CFO的岗位职责
2019/11/18 职场文书