javascript - Javascript中的相交数组
问题描述
如何在相当快的时间内用 Javascript 编写INTERSECT
N数组?
IE。
arr1 = [1,2,3,4,5];
arr2 = [1,2,3,4];
arr3 = [4];
arr4 = [4,5];
结果: [4]
解决方案
您可以使用 aSet
和为常见元素使用交集函数Array#filter
。
function common(a, b) {
return b.filter(Set.prototype.has.bind(new Set(a)));
}
console.log([[1, 2, 3, 4, 5], [1, 2, 3, 4], [4], [4, 5]].reduce(common));
推荐阅读
- python - 没有这样的选项:安装 tensorflow 对象检测 api 时的 --use-feature
- r - 在 FDA 图中绘制凸包 - R
- python - 从 Xgboost 拟合模型中获取置信区间
- reactjs - Animation 和 LayoutAnimation API 的区别?
- scala - 在 Akka Typed 中测试消息适配器
- html - Html,使用 onclick 功能进行重定向的标签
- android - 更改查看寻呼机选择时显示不同的浮动操作按钮 (FAB)
- c# - 如何使用 LINQ / Reflection 获取 DataRow(未知)对象中特定属性的值?
- python - 如何在 pandas 中执行滚动求和和乘法?
- vb.net - 使用我们的 Web 应用程序实现 Docusign API