Javascript 查找数组中最经常出现的元素

Javascript 查找数组中最经常出现的元素,javascript,arrays,multidimensional-array,Javascript,Arrays,Multidimensional Array,我正在研究一个解决方案,在给定一系列数字[1,13]的情况下,找到最小的公倍数; 到目前为止,我已成功获得了以下范围的数组:- [1,2,3,4,5,6,7,8,9,10,11,12,13] 以及范围内每个数字的素因子数组:- [2]、[3]、[2,2]、[5]、[2,3]、[7]、[2,2,2]、[3,3]、[5,2]、[2,2,3]、[13]] 我想做的是能够将factors数组减少到一个数组中,这个数组包含了大多数这样的factors实例:-[[2,2,2],[3,3],[5],[7],

我正在研究一个解决方案,在给定一系列数字[1,13]的情况下,找到最小的公倍数; 到目前为止,我已成功获得了以下范围的数组:- [1,2,3,4,5,6,7,8,9,10,11,12,13] 以及范围内每个数字的素因子数组:- [2]、[3]、[2,2]、[5]、[2,3]、[7]、[2,2,2]、[3,3]、[5,2]、[2,2,3]、[13]]

我想做的是能够将factors数组减少到一个数组中,这个数组包含了大多数这样的factors实例:-[[2,2,2],[3,3],[5],[7],[11],[13]]


有什么方法可以实现这一点吗?我已经在这一点上停留了一段时间了

使用数组作为键/值对。您的键可以是factors数组的“stringyfied”表示,而值当然是{出现次数,factor数组}。扫描阵列并增加相应的引用。找到出现数组的最大值

基本上问题可以分为

  • 整数因子分解
    getFactors()
  • 因子计数
  • 仅获取金额较高的计数
  • 将结果转换为数组
功能范围(a、b){
函数系数(n){
var f,count={};
而(n!==1){
f=2;
而(n%f){f++;}
计数[f]=(计数[f]| 0)+1;
n/=f;
}
返回计数;
}
变量数组=[],
计数={},
我

对于(i=a;我请发布更多关于您的环境的详细信息,例如您正在使用的确切数据结构,可能带有您的代码片段。否则,这只是一个数学/理论CS问题,不属于SO的范围。您如何处理
[2,3]
[2,2,3]
?不需要这些,这是一种寻找最小公倍数的方法,应该是欧几里德的;基本上所有的2都将由具有最多2的数组表示