本文主要是介绍LintCode 1119. 三个数的最大乘积 JavaScript算法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
描述
给定一个整数数组,找到三个元素,使乘积最大,返回该积。
说明
- 数组的长度范围为[3, 10^4],所有的元素范围为[-1000, 1000]。
- 任意三个元素的积不会超过32位有符号整数的范围。
样例
- 样例 1:输入: [1,2,3]
输出: 6- 样例 2:输入: [1,2,3,4]
输出: 24
解析
要考虑负数的情况,负负得正。
两个最大负数和最大正数的乘积与三个最大正数的乘积要进行比较。
maximumProduct=n=>{l = n.lengthn = n.sort((a,b)=>b-a)return Math.max(n[0]*n[1]*n[2],n[l-2]*n[l-1]*n[0])
}
运行结果
这篇关于LintCode 1119. 三个数的最大乘积 JavaScript算法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!