Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在一组数字中,找出三个数字中的最高乘积_Javascript_Arrays - Fatal编程技术网

Javascript 在一组数字中,找出三个数字中的最高乘积

Javascript 在一组数字中,找出三个数字中的最高乘积,javascript,arrays,Javascript,Arrays,给出一个[-7,8,-3,4,-2,-7,7]的示例数组,找出这三个数字中任何一个可能产生的最高乘积 Python中相同问题的解决方案的相关问题,该问题没有得到代码的答案: 对于第一段中提供的示例数组,预期结果为392。最大乘积为max1*max2*max3或max1*min1*min2,因为两个负值相乘将得到一个正值,因此: const highestProduct=arr=>{ const sorted=arr.sorta,b=>b-a;//从最高到最低递减 常量n=[…sorted.sl

给出一个[-7,8,-3,4,-2,-7,7]的示例数组,找出这三个数字中任何一个可能产生的最高乘积

Python中相同问题的解决方案的相关问题,该问题没有得到代码的答案:


对于第一段中提供的示例数组,预期结果为392。

最大乘积为max1*max2*max3或max1*min1*min2,因为两个负值相乘将得到一个正值,因此:

const highestProduct=arr=>{ const sorted=arr.sorta,b=>b-a;//从最高到最低递减 常量n=[…sorted.slice0,3,…sorted.slice-2];//[max1,max2,max3,min1,min2] 返回Math.maxn[0]*n[1]*n[2],n[0]*n[3]*n[4];//max1*max2*max3和max1*min1*min2中的较大值 } 对数最高的产品[-7,8,-3,4,-2,-7,7] 你可以试试这个 设arr=[-7,8,-3,4,-2,-7,7]; 设op=arr.sorta,b=>b-a 设max1=op.slice0,3.reducea,b=>a*b,1; 设max2=op.slice-2.reducea,b=>a*b,1*op[0]; 让final=Math.max1,max2
console.logfinal;请这样做。顺便说一句,排序使数组变异。顺便说一句,你自己就是OP,但你还是给出了一个错误的答案?顺便说一句,答案应该是392从这个[-7,8,-3,4,-2,-7,7]