628. 三个数的最大乘积

628. 三个数的最大乘积icon-default.png?t=M666https://leetcode.cn/problems/maximum-product-of-three-numbers/

难度简单385

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

示例 1:

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

示例 2:

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

示例 3:

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

提示:

  • 3 <= nums.length <= 104
  • -1000 <= nums[i] <= 1000

通过次数97,482提交次数186,308

class Solution {
    public int maximumProduct(int[] nums) {

        // 选择排序
        for(int i=0;i<nums.length-1;i++)
        {
            int index=i; // index表示当前该顺序位置的
            for(int j=i+1;j<nums.length;j++)
            {
                if(nums[j]<nums[index]) index=j;
            }
            if(index!=i)
            {
                int temp = nums[index];
                nums[index] = nums[i];
                nums[i] = temp;
            }
        }
        int z = nums[0]*nums[1]*nums[nums.length-1];
        int ans = nums[nums.length-3]*nums[nums.length-1]*nums[nums.length-2];
        return ans>z?ans:z;
    }
}

628. 三个数的最大乘积

 

© 版权声明
THE END
喜欢就支持一下吧
点赞10 分享
相关推荐
  • 暂无相关文章
  • 评论 抢沙发

    请登录后发表评论

      暂无评论内容