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

JavaScript에서 중앙 정점 배열 확인

<시간/>

문제

첫 번째이자 유일한 인수로 숫자 배열, arr를 취하는 JavaScript 함수를 작성해야 합니다.

우리 함수는 입력 배열이 중앙 정점 배열인지 여부를 확인해야 합니다. 중앙 정점 배열인 경우 true를 반환하고 그렇지 않으면 false를 반환해야 합니다.

중앙 정점 배열이 되기 위한 조건은 -

  • 길이>=3

  • 0

    • arr[0]

    • arr[i]> arr[i+1]> ...> arr[arr.length - 1]

예를 들어, 함수에 대한 입력이 -

인 경우
const arr = [2, 6, 7, 9, 5, 3, 1];

그러면 출력은 다음과 같아야 합니다. -

const output = true;

출력 설명

어레이 피크가 9이기 때문입니다.

예시

이에 대한 코드는 -

const arr = [2, 6, 7, 9, 5, 3, 1];
const isCentrallyPeaked = (arr = []) => {
   let ind = undefined;
   for (let i = 1; i <= arr.length - 1; i++) {
      if (ind === undefined) {
         if (arr[i] < arr[i - 1]) {
            ind = i - 1
         } else if (arr[i] === arr[i - 1]) {
            return false
         }
      } else if (arr[i] >= arr[i - 1]) {
         return false
      }
   }
   return ind > 0 && ind < arr.length - 1
};
console.log(isCentrallyPeaked(arr));

출력

콘솔의 출력은 -

true