在数组中查找max及其在javascript中的对应项
我有两个维度相同的数组,一个表示频率,一个表示值 示例:在数组中查找max及其在javascript中的对应项,javascript,arrays,Javascript,Arrays,我有两个维度相同的数组,一个表示频率,一个表示值 示例: var value = [20, 40, 10, 80, 16]; var frequency = [10, 16, 25, 31.5, 40]; 我是这样使用math.max方法的 var maxValue = Math.max.apply(Math, value); 现在我想在频率阵列的相同位置找到频率。您可以执行以下操作: var maxValue = Math.max.apply(Math, value); //finding
var value = [20, 40, 10, 80, 16];
var frequency = [10, 16, 25, 31.5, 40];
我是这样使用math.max方法的
var maxValue = Math.max.apply(Math, value);
现在我想在频率阵列的相同位置找到频率。您可以执行以下操作:
var maxValue = Math.max.apply(Math, value); //finding max value
var index_freq = value.indexOf("maxValue "); // findind index of that max
var myFrequecy = frequency[index_freq]; //frequecy value for same as in value
你可以做:
var maxValue = Math.max.apply(Math, value); //finding max value
var index_freq = value.indexOf("maxValue "); // findind index of that max
var myFrequecy = frequency[index_freq]; //frequecy value for same as in value
假设值是唯一的
var maxValue = Math.max.apply(Math, value);
var index = value.indexOf(maxValue);
var freq = frequency[index];
假设值是唯一的
var maxValue = Math.max.apply(Math, value);
var index = value.indexOf(maxValue);
var freq = frequency[index];
在O(n)时间内,你可以做如下事情。这应该和单个Math.max()
函数一样有效
var值=[20,40,10,80,16],
频率=[10,16,25,31.5,40],
结果=值。减少((p,c,i)=>c>p.v?(p.v=c,p.f=频率[i],p)
:p,{v:-无穷大,f:-无穷大});
控制台日志(结果)代码>在O(n)时间内,您可以执行以下操作。这应该和单个Math.max()
函数一样有效
var值=[20,40,10,80,16],
频率=[10,16,25,31.5,40],
结果=值。减少((p,c,i)=>c>p.v?(p.v=c,p.f=频率[i],p)
:p,{v:-无穷大,f:-无穷大});
控制台日志(结果)代码>frequency[value.indexOf(maxValue)]
应该这样做。frequency[value.indexOf(maxValue)]
应该这样做。