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

세 개의 엄격하게 증가하는 숫자(연속 또는 비연속). JavaScript의 배열에서


다음과 같은 숫자 배열이 있다고 가정해 보겠습니다. -

const arr = [4, 7, 4, 8, 9, 3];

이러한 숫자 배열 중 하나를 취하는 JavaScript 함수를 작성해야 합니다. 함수는 인덱스와 크기가 엄격하게 증가하는 순서(연속 또는 비연속)인 배열에서 이러한 세 개의 숫자를 검색해야 합니다.

예를 들어, 위의 배열에서 숫자 7, 8, 9는 인덱스 1, 3, 4를 갖습니다. 이 숫자는 두 조건을 모두 만족하므로 이 배열에 대해 함수가 true를 반환해야 합니다.

예시

이에 대한 코드는 -

const arr = [4, 7, 4, 8, 9, 3];
const findMatch = (arr) => {
   let stack = [];
   let s3 = −Infinity
   for (let i = arr.length − 1; i >= 0; i−−) {
      if (arr[i] < s3) return true
      while (stack.length > 0 && stack[stack.length − 1] < arr[i]) {
         s3 = stack.pop()
      };
      stack.push(arr[i])
   };
   return false
};
console.log(findMatch(arr));

출력

콘솔의 출력은 -

false