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 弹出层组件(升级版)
May 12 Javascript
javascript实现文本域写入字符时限定字数
Feb 12 Javascript
超棒的响应式布局jQuery插件Freetile.js
Nov 17 Javascript
javascript实现根据身份证号读取相关信息
Dec 17 Javascript
基于jquery插件实现拖拽删除图片功能
Aug 27 Javascript
详解Bootstrap的iCheck插件checkbox和radio
Aug 24 Javascript
Bootstrap笔记之缩略图、警告框实例详解
Mar 09 Javascript
layer子层给父层页面元素赋值,以达到向父层页面传值的效果实例
Sep 22 Javascript
vue移动端实现下拉刷新
Apr 22 Javascript
微信小程序中遇到的iOS兼容性问题小结
Nov 14 Javascript
Next.js项目实战踩坑指南(笔记)
Nov 29 Javascript
js防抖函数和节流函数使用场景和实现区别示例分析
Apr 11 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
模仿OSO的论坛(五)
2006/10/09 PHP
PHP用GD库生成高质量的缩略图片
2011/03/09 PHP
Yii框架实现邮箱激活的方法【数字签名】
2016/10/18 PHP
php提高脚本性能的4个技巧
2020/08/18 PHP
Google Map V3 绑定气泡窗口(infowindow)Dom事件实现代码
2013/04/26 Javascript
jQuery实现点击文本框弹出热门标签的提示效果
2013/11/17 Javascript
JS获得QQ号码的昵称,头像,生日的简单实例
2013/12/04 Javascript
jquery map方法使用示例
2014/04/23 Javascript
javascript实现动态改变层大小的方法
2015/05/14 Javascript
window.onload与$(document).ready()的区别分析
2015/05/30 Javascript
ECMAScript6中Set/WeakSet详解
2015/06/12 Javascript
JavaScript的jQuery库中function的存在和参数问题
2015/08/13 Javascript
js实现自定义路由
2017/02/04 Javascript
详解axios在vue中的简单配置与使用
2017/05/10 Javascript
Express + Node.js实现登录拦截器的实例代码
2017/07/01 Javascript
使用json-server简单完成CRUD模拟后台数据的方法
2018/07/12 Javascript
Bootstrap Table 双击、单击行获取该行及全表内容
2018/08/31 Javascript
vue  自定义组件实现通讯录功能
2018/09/30 Javascript
Vue.js + Nuxt.js 项目中使用 Vee-validate 表单校验
2019/04/22 Javascript
[00:35]可解锁地面特效
2018/12/20 DOTA
Python的函数嵌套的使用方法
2014/01/24 Python
Python 分析Nginx访问日志并保存到MySQL数据库实例
2014/03/13 Python
Python写的服务监控程序实例
2015/01/31 Python
python中的代码编码格式转换问题
2015/06/10 Python
如何用OpenCV -python3实现视频物体追踪
2019/12/04 Python
jupyter notebook tensorflow打印device信息实例
2020/04/20 Python
Python的Tqdm模块实现进度条配置
2021/02/24 Python
基于CSS3制作立体效果导航菜单
2016/01/12 HTML / CSS
基于html5 DeviceOrientation 实现微信摇一摇功能
2015/09/25 HTML / CSS
汽车电子与维修专业大学生求职信
2013/09/28 职场文书
应届大学生求职信
2013/12/01 职场文书
岗位说明书怎么写
2014/07/30 职场文书
试用期员工工作自我评价
2014/09/10 职场文书
2015感人爱情寄语
2015/02/26 职场文书
心术观后感
2015/06/11 职场文书
2016中秋节月饼促销广告语
2016/01/28 职场文书