Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript를 사용하여 배열에서 가장 오래 반복되는 숫자를 찾고 반환하는 방법

<시간/>

일부 반복 요소를 포함할 수 있는 Number 배열을 사용하는 JavaScript 함수를 작성해야 합니다. 함수는 배열에서 반복되는 가장 긴 숫자 시퀀스의 길이를 반환해야 합니다.

예를 들어 -

입력 배열이 -

인 경우
const arr = [2, 1, 1, 2, 3, 3, 2, 2, 2, 1];

그러면 배열에서 숫자 2가 연속적으로 3번 반복되기 때문에 출력은 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