leetcode怎么计算三个数的最大乘积

这篇文章主要介绍“leetcode怎么计算三个数的最大乘积”,在日常操作中,相信很多人在leetcode怎么计算三个数的最大乘积问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”leetcode怎么计算三个数的最大乘积”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

一、题目内容

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

示例 1:

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

示例 2:

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

注意:

给定的整型数组长度范围是[3,104],数组中所有的元素范围是[-1000, 1000]。
输入的数组中任意三个数的乘积不会超出32位有符号整数的范围。

二、解题思路

没啥说的,排序后最大乘积要么是最后三个数的乘积,要么是前两个数相乘再乘以最后一个数的乘积(负负得正)。

三、代码

class Solution:
    def maximumProduct(self, nums: list) -> int:
        nums.sort()
        return max(nums[-1] * nums[-2] * nums[-3], nums[0] * nums[1] * nums[-1])


if __name__ == '__main__':
    nums = [1, 2, 3, 4]
    s = Solution()
    ans = s.maximumProduct(nums)
    print(ans)

到此,关于“leetcode怎么计算三个数的最大乘积”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

原创文章,作者:carmelaweatherly,如若转载,请注明出处:https://blog.ytso.com/223652.html

(0)
上一篇 2022年1月7日
下一篇 2022年1月7日

相关推荐

发表回复

登录后才能评论