文章目录
1. 题目2. 描述3. 思路4. 实现
1. 题目
1464. 数组中两元素的最大乘积
2. 描述
给你一个整数数组 nums,请你选择数组的两个不同下标 i 和 j_,_使 (nums[i]-1)*(nums[j]-1) 取得最大值。
请你计算并返回该式的最大值。
3. 思路
将数组进行排序后,取最后的两元素进行相乘返回即可,主要进行排序操作,时间复杂度为
O
(
n
∗
l
o
g
n
)
O(n*logn)
O(n∗logn).
4. 实现
public int maxProduct(int[] nums
) {
Arrays
.sort(nums
);
int size
= nums
.length
;
return (nums
[size
- 1] - 1) * (nums
[size
- 2] - 1);
}