给定一个整型数组,在数组中找出由三个数组成的最大乘积,并输出这个乘积。 复制代码
示例:
输入: [1,2,3] 输出: 6 输入: [1,2,3,4] 输出: 24 复制代码
思考:
最大乘积的三个数可能有两种情况: 1.最大的三个正数相乘。 2.最小两个负数相乘再乘上最大的整数。 所以先将数组排序,然后按以上条件取两种情况之中较大的数。 复制代码
实现:
class Solution {
public int maximumProduct(int[] nums) {
Arrays.sort(nums);
return Math.max(nums[0] * nums[1] * nums[nums.length - 1], nums[nums.length - 1] * nums[nums.length - 2] * nums[nums.length - 3]);
}
}复制代码
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 力扣152——乘积最大子序列
- 蓝桥杯 ADV-189 算法提高 连接乘积
- Leetcode日记_01,乘积最大子序列
- 算法 - 找出数组中子集乘积的最大值
- 蓝桥杯 ADV-13 算法提高 最小乘积(提高型)
- swoole之协程channel元素个数
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
机器学习基础教程
(英)Simon Rogers,、Mark Girolami / 郭茂祖、王春宇 刘扬 刘晓燕、刘扬、刘晓燕 / 机械工业出版社 / 2014-1 / 45.00
本书是一本机器学习入门教程,包含了数学和统计学的核心技术,用于帮助理解一些常用的机器学习算法。书中展示的算法涵盖了机器学习的各个重要领域:分类、聚类和投影。本书对一小部分算法进行了详细描述和推导,而不是简单地将大量算法罗列出来。 本书通过大量的MATLAB/Octave脚本将算法和概念由抽象的等式转化为解决实际问题的工具,利用它们读者可以重新绘制书中的插图,并研究如何改变模型说明和参数取值。......一起来看看 《机器学习基础教程》 这本书的介绍吧!