如何使用 JavaScript 查找并返回数组中最长的重复数字序列
javascriptweb developmentfront end technologyobject oriented programming
我们需要编写一个 JavaScript 函数,该函数接受一个可能包含一些重复元素的数字数组。该函数应返回数组中最长重复数字序列的长度。
例如 −
如果输入数组是 −
const arr = [2, 1, 1, 2, 3, 3, 2, 2, 2, 1];
那么输出应该是 3,因为数字 2 在数组中连续重复了 3 次(这是最大的数字)。
示例
const arr = [2, 1, 1, 2, 3, 3, 2, 2, 2, 1];
const findLongestSequence = (arr = []) => {
const res = arr.reduce((acc,val,ind) => {
if(acc.length && acc[acc.length-1][0] === val){
acc[acc.length-1].push(val);
}else{
acc.push([val]);
};
return acc;
},[]).reduce((acc, val) => {
return val.length > acc.length ? val : acc;
}); return res.length;
}
console.log(findLongestSequence(arr));
输出
控制台中的输出将是 −
3
相关文章
有用资源
javascript 参考教程 - 该教程包含有关 javascript 的更多信息:https://www.cainiaomax.com/javascript/

