这题就是找数组里的最大值和次大值
方法一 排序
var maxProduct = function(nums) {
nums.sort((a,b)=>b-a)
return (nums[0] - 1) * (nums[1] - 1);
};
消耗时间和内存情况:
方法二 一次遍历:
var maxProduct = function(nums) {
let first=-1,second=-2
for(let num of nums){
if(num>first){
second=first
first=num
continue
}
if(num>second){
second=num
}
}
return (first-1)*(second-1)
};
消耗时间和内存情况: