JavaScript中具有最大和的子集
我们需要编写一个使用整数数组的JavaScript函数。我们的功能需要找到具有最大和的不相邻元素的子集。
最后,该函数应计算并返回该子集的总和。
例如-
如果输入数组是-
const arr = [3, 5, 7, 8, 10];
然后输出应该是20,因为数字的不相邻子集将是3、7和10。
示例
为此的代码将是-
const arr = [3, 5, 7, 8, 10];
const maxSubsetSum = (arr = []) => {
let min = −Infinity
const helper = (arr, ind) => {
if ( ind < 0 ){
return min
};
let inc = helper(arr, ind−2);
let notInc = helper(arr, ind−1);
inc = inc == min ? arr[ind] : Math.max(arr[ind], arr[ind] + inc);
return Math.max( inc, notInc );
};
return helper(arr, arr.length − 1);
};
console.log(maxSubsetSum(arr));输出结果
控制台中的输出将是-
20
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短