如题,多个数组中取交集(共同拥有元素),思路取第一个数组去跟每个数组中的元素对比,同时比较数据类型有救返回没有就返回null。

下面介绍到的算法数据格式是二维数组如:

const parentArray = [[11,12,343,34,432,34,4],[54,3,4,5,2,52],[34,2,3,23,423,234]]

算法明细:

var arr = arrs.shift(); for(var i=arrs.length;i--;){var p = {"boolean":{}, "number":{}, "string":{}}, obj = [];arr = arr.concat(arrs[i]).filter(function (x) {var t = typeof x;return !((t in p) ? !p[t][x] && (p[t][x] = 1) : obj.indexOf(x) < 0 && obj.push(x));});if(!arr.length) return null; }return arr;

转载于:https://www.cnblogs.com/leungUwah/p/9236590.html

一个JS多个数组取交集算法相关推荐

  1. 最快速度求两个数组之交集算法与hash

    一个题目 该题目来自58同城的二面,用最快速度求两个数组之交集算法. 比如A={6,2,4,1},B={2,9,4,3},那么A&B={2,4}. 算法一:在大多数情况,也就是一般的情况下,大 ...

  2. php二维数组取交集,PHP中二维数组怎么取交集

    PHP中二维数组取交集的方法:首先循环其中一个数组:然后使用in_array()函数判断被循环数组的每个元素是否在另外一个数组中:最后输出$out_arr即可. PHP二维数组怎么取交集? 思路,循环 ...

  3. 最快速度求两个数组之交集算法

    该题目来自58同城的二面,用最快速度求两个数组之交集算法. 比如A={6,2,4,1},B={2,9,4,3},那么A&B={2,4}. 算法一:在大多数情况,也就是一般的情况下,大家都能想出 ...

  4. jQuery 数组取交集,Array.intersect(arr1,arr2);

    //jQuery 数组取交集 let result = Array.intersect(arr1,arr2);

  5. php二维数组取交集,php array交集 PHP二维数组取差集操作方法 - 非主流娱乐网

    php array交集 PHP二维数组取差集操作方法 2019-07-11 23:14:16 来源: 非主流娱乐网责任编辑:小s0条评论 一.需求 PHP 中对二维数组取差集操作. 例如: $arr1 ...

  6. JS数组取交集、并集

    简单数组 如果数组中仅是字符串和数值 es5 var a = [1,2,3], b = [2,3,4,5]; // 交集---[2,3] var intersection = a.filter(ite ...

  7. js 两个列表取交集

    js没有直接的方式来获取两个列表的交集,需要自己写一个函数,如下: function jiaoji(arr_1,arr_2){//先对arr_1进行一次深拷贝,防止对原两个列表造成影响let temp ...

  8. 如何判断一个 js 变量是数组类型

    方法一:使用 instanceof 运算符, 该运算符左边是我们想要判断的变量, 右边则是我们想要判断的对象的类 let arr = [1, 2, 3] console.log(arr instanc ...

  9. java数组交集_java实现两个数组取交集

    下面贴出代码: import java.util.HashMap; import java.util.LinkedList; import java.util.Map; import org.apac ...

最新文章

  1. Linux系统平台上软件安装心得
  2. Akka 接收消息超时的处理_Receive Timeout
  3. db和model用哪个开发大型项目 thinkphp_Java程序员开发大型应用程序时,必须要掌握几个的技巧...
  4. 【刷算法】两个链表的第一个公共结点
  5. java中使用request,application,session,cookie对象
  6. 时序数据处理工具-时间序列数据特征提取TsFresh
  7. 大数据复核_【BIM技术】三维扫描结合BIM技术在结构复核中的应用
  8. SCP-bzoj-1019
  9. mysql数据库之联表查询
  10. php 正则忽略空白,(PHP)正则表达式-忽略空白
  11. JAVA进制转换,十进制转换为八进制
  12. vue中点击高德地图获取经纬度
  13. 苹果系统无法更新无法连接网络连接服务器,iTunes无法联系iphone软件更新服务器 不可连接解决方法...
  14. 乡镇特色产业发展调研报告2
  15. 第二十一章 异步编程
  16. 高德足迹地图在哪里,高德地图怎么点亮城市?高德地图足迹地图查看方法
  17. bzoj1645 / P2061 [USACO07OPEN]城市的地平线City Horizon(扫描线)
  18. 使用神经网络实现葡萄酒数据集的分类分析
  19. 自然语言处理常见算法与模型
  20. 机房UPS主机及电池该如何搬迁

热门文章

  1. 强人工智能基本问题:神经网络分层还是不分层
  2. D3D 光照和材料 小样例
  3. github上完成个人的站点搭建
  4. 《谈谈认同》这个文章有点晦涩 写的不太好
  5. C# ToString() 参数大全
  6. DAX/PowerBI系列 - 玩转阿里云 Alicloud Pricing
  7. 敏捷落地的会议和工具
  8. Python之函数参数介绍
  9. 单独编译使用WebRTC的音频处理模块 - android
  10. jQuery之事件移除