Leaders数组JavaScript
如果Numbers数组中的某个元素大于其右侧的所有元素,则该元素为领导者。我们需要编写一个JavaScript函数,该函数接受一个Numbers数组,并返回所有满足成为Leader元素条件的元素的子数组。
例如-
If the input array is: [23, 55, 2, 56, 3, 6, 7, 1] Then the output should be: [56, 7, 1]
让我们为该函数编写代码-
示例
const arr = [23, 55, 2, 56, 3, 6, 7, 1];
const leaderArray = arr => {
const creds = arr.reduceRight((acc, val) => {
let { max, res } = acc;
if(val > max){
res.unshift(val);
max = val;
};
return { max, res };
}, {
max: -Infinity,
res: []
})
return creds.res;
};
console.log(leaderArray(arr));输出结果
控制台中的输出将为-
[56, 7, 1]