题目
给定一个整型数组,在数组中找出由三个数组成的最大乘积,并输出这个乘积。
示例 1:
1 | 输入: [1,2,3] |
示例2:
1 | 输入: [1,2,3,4] |
示例3:
1 | 输入:nums = [-1,-2,-3] |
提示:
3 <= nums.length <= 10^4
-1000 <= nums[i] <= 1000
解法
解法一:
排序,取最大的三个数相乘。最大的有两种情况,最后三个正整数的乘积,或者最前面的2个整数和最后一个整数的乘积
JAVA
1 | public int maximumProduct(int[] nums) { |
解法二:
线性扫描
JAVA
1 | public int maximumProduct(int[] nums) { |