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对象是否可用的最正确方法分析
Oct 03 Javascript
js获取浏览器的可视区域尺寸的实现代码
Nov 30 Javascript
利用try-catch判断变量是已声明未声明还是未赋值
Mar 12 Javascript
JavaScript获取文本框内选中文本的方法
Feb 20 Javascript
uploadify多文件上传参数设置技巧
Nov 16 Javascript
JavaScript与jQuery实现的闪烁输入效果
Feb 18 Javascript
基于JavaScript实现带数据验证和复选框的表单提交
Aug 23 Javascript
Vue+webpack+Element 兼容问题总结(小结)
Aug 16 Javascript
详解微信小程序开发聊天室—实时聊天,支持图片预览
May 20 Javascript
vue如何使用async、await实现同步请求
Dec 09 Javascript
详解vue或uni-app的跨域问题解决方案
Feb 21 Javascript
vue项目实现多语言切换的思路
Sep 17 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入门小知识
2008/03/24 PHP
Ajax+PHP 边学边练 之二 实例
2009/11/24 PHP
thinkphp3.0输出重复两次的解决方法
2014/12/19 PHP
一段实用的php验证码函数
2016/05/19 PHP
thinkPHP实现多字段模糊匹配查询的方法
2016/12/01 PHP
Ecshop 后台添加新功能栏目及管理权限设置教程
2017/11/21 PHP
调试php程序的简单步骤
2019/10/04 PHP
node.js中的fs.mkdirSync方法使用说明
2014/12/17 Javascript
jQuery中empty()方法用法实例
2015/01/16 Javascript
javascript实现图片上传前台页面
2015/08/18 Javascript
jQuery动态添加及删除表单上传元素的方法(附demo源码下载)
2016/01/15 Javascript
JavaScript学习笔记之取数组中最大值和最小值
2016/03/23 Javascript
bootstrap下拉列表与输入框组结合的样式调整
2016/10/08 Javascript
vue组件 $children,$refs,$parent的使用详解
2017/07/31 Javascript
解决vue移动端适配问题
2018/12/12 Javascript
js防抖函数和节流函数使用场景和实现区别示例分析
2020/04/11 Javascript
Python实现微信公众平台自定义菜单实例
2015/03/20 Python
详解Django缓存处理中Vary头部的使用
2015/07/24 Python
Python列表list内建函数用法实例分析【insert、remove、index、pop等】
2017/07/24 Python
python 列表,数组,矩阵两两转换tolist()的实例
2018/04/04 Python
Python实现数据结构线性链表(单链表)算法示例
2019/05/04 Python
python数据归一化及三种方法详解
2019/08/06 Python
Django中密码的加密、验密、解密操作
2019/12/19 Python
opencv resize图片为正方形尺寸的实现方法
2019/12/26 Python
详解pandas绘制矩阵散点图(scatter_matrix)的方法
2020/04/23 Python
基于python3.7利用Motor来异步读写Mongodb提高效率(推荐)
2020/04/29 Python
Python 基于jwt实现认证机制流程解析
2020/06/22 Python
乌克兰香水和化妆品网站:Notino.ua
2018/03/26 全球购物
英国标志性生活方式品牌:Skinnydip London
2019/12/15 全球购物
市场专员岗位职责
2014/02/14 职场文书
2014年预备党员学习新党章思想汇报
2014/09/15 职场文书
2014年财政工作总结
2014/12/10 职场文书
党风廉正建设责任书
2015/01/29 职场文书
2015年推广普通话演讲稿
2015/03/20 职场文书
2016春节放假通知范文
2015/08/18 职场文书
SQLServer2019 数据库的基本使用之图形化界面操作的实现
2021/04/08 SQL Server