LeetCode 628. 三個數的最大乘積
阿新 • • 發佈:2019-01-13
題目描述
- LeetCode 628. 三個數的最大乘積
- 給定一個整型陣列,在陣列中找出由三個陣列成的最大乘積,並輸出這個乘積。
示例1
- 輸入: [1,2,3]
- 輸出: 6
示例2
- 輸入: [1,2,3,4]
- 輸出: 24
Java Code
class Solution { public int maximumProduct(int[] nums) { int max1 = Integer.MIN_VALUE, max2 = Integer.MIN_VALUE, max3 = Integer.MIN_VALUE; int min2 = Integer.MAX_VALUE, min1 = Integer.MAX_VALUE; for (int num : nums) { if (num >= max1) { max3 = max2; max2 = max1; max1 = num; } else if (num >= max2) { max3 = max2; max2 = num; } else if (num >= max3) { max3 = num; } if (num <= min1) { min2 = min1; min1 = num; } else if (num <= min2) { min2 = num; } } return Math.max(max1 * max2 * max3, max1 * min1 * min2); } }
參考連結: