0
点赞
收藏
分享

微信扫一扫

628. 三个数的最大乘积


给你一个整型数组 nums ,在数组中找出由三个数组成的最大乘积,并输出这个乘积。


示例 1:

输入:nums = [1,2,3]
输出:6
示例 2:

输入:nums = [1,2,3,4]
输出:24
示例 3:

输入:nums = [-1,-2,-3]
输出:-6

  • 如果全正  全﹣ 如果两个+ 一个--  则最大值是 int max1=nums[nums.length-1]*nums[nums.length-2]*nums[nums.length-3];
  • 两个--一个+   则最大值是: int max2=nums[0]*nums[1]*nums[nums.length-1]
  • 返回这两个里面的最大的那个

class Solution {
public int maximumProduct(int[] nums) {
Arrays.sort(nums);
//全正 全﹣ 两个+ 一个-
int max1=nums[nums.length-1]*nums[nums.length-2]*nums[nums.length-3];
//两个-一个+
int max2=nums[0]*nums[1]*nums[nums.length-1];
return Math.max(max1,max2);



}
}

举报

相关推荐

0 条评论