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 学习初步 入门教程
Mar 25 Javascript
微信小程序 Flex布局详解
Oct 09 Javascript
JavaScript实现左右下拉框动态增删示例
Mar 09 Javascript
javascript 初学教程及五子棋小程序的简单实现
Jul 04 Javascript
深入理解vue $refs的基本用法
Jul 13 Javascript
微信小程序之GET请求的实例详解
Sep 29 Javascript
vue一个页面实现音乐播放器的示例
Feb 06 Javascript
浅谈Vue-cli单文件组件引入less,sass,css样式的不同方法
Mar 13 Javascript
Vue中 v-if/v-show/插值表达式导致闪现的原因及解决办法
Oct 12 Javascript
vue自定义js图片碎片轮播图切换效果的实现代码
Apr 28 Javascript
使用Element的InfiniteScroll 无限滚动组件报错的解决
Jul 27 Javascript
JavaScript实现移动小精灵的案例代码
Dec 12 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
set_exception_handler函数在ThinkPHP中的用法
2014/10/31 PHP
PHP简单获取视频预览图的方法
2015/03/12 PHP
PHP+JS实现大规模数据提交的方法
2015/07/02 PHP
PHP-X系列教程之内置函数的使用示例
2017/10/16 PHP
a标签的css样式四个状态
2021/03/09 HTML / CSS
jQuery中文入门指南,翻译加实例,jQuery的起点教程
2007/01/13 Javascript
ExtJS Window 最小化的一种方法
2009/11/18 Javascript
jquery一般方法介绍 入门参考
2011/06/21 Javascript
get(0).tagName获得作用标签示例代码
2014/10/08 Javascript
jQuery中appendTo()方法用法实例
2015/01/08 Javascript
实例详解JSON数据格式及json格式数据域字符串相互转换
2016/01/07 Javascript
JS控制弹出悬浮窗口(一览画面)的实例代码
2016/05/30 Javascript
详解js的六大数据类型
2016/12/27 Javascript
Angularjs分页查询的实现
2017/02/24 Javascript
Angularjs中使用轮播图指令swiper
2017/05/30 Javascript
jQury Ajax使用Token验证身份实例代码
2017/09/22 Javascript
Angular2仿照微信UI实现9张图片上传和预览的示例代码
2017/10/19 Javascript
解决Linux无法正常安装与卸载Node.js的方法
2018/01/19 Javascript
mui框架 页面无法滚动的解决方法(推荐)
2018/01/25 Javascript
koa2实现登录注册功能的示例代码
2018/12/03 Javascript
VUE 单页面使用 echart 窗口变化时的用法
2020/07/30 Javascript
[00:14]护身甲盾
2019/03/06 DOTA
简单的通用表达式求10乘阶示例
2014/03/03 Python
Python读写及备份oracle数据库操作示例
2018/05/17 Python
详解Python3的TFTP文件传输
2018/06/26 Python
django的auth认证,authenticate和装饰器功能详解
2019/07/25 Python
numpy按列连接两个维数不同的数组方式
2019/12/06 Python
新手常见Python错误及异常解决处理方案
2020/06/18 Python
HTML5 canvas 瀑布流文字效果的示例代码
2018/01/31 HTML / CSS
编写一子程序,将一链表倒序,即使链表表尾变表头,表头变表尾
2016/02/10 面试题
Java基础面试题
2014/07/19 面试题
最新大学生自我评价
2013/09/24 职场文书
领导班子四风对照检查材料范文
2014/09/27 职场文书
小学教师年度个人总结
2015/02/05 职场文书
莫言获奖感言(全文)
2015/07/31 职场文书
Filebeat 采集 Nginx 日志的方法
2021/03/31 Servers