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

JavaScript에서 쌍의 평균이 목표 평균과 동일한 값 쌍이 배열에 있는지 확인합니다.


정렬된 정수 배열과 목표 평균을 첫 번째 및 두 번째 인수로 사용하는 JavaScript 함수를 작성해야 합니다.

함수는 배열에 쌍의 평균이 목표 평균과 같은 값 쌍이 있는지 여부를 결정해야 합니다.

O(1) 추가 공간 복잡성과 O(n) 시간 복잡성이 있는 솔루션이 있습니다. 배열이 정렬되기 때문에 두 개의 인덱스가 있는 것이 합리적입니다. 하나는 시작에서 끝까지(예:y), 다른 하나는 배열의 끝에서 시작(예:x)으로 이동합니다.

예시

이에 대한 코드는 -

const arr = [1, 2, 4, 6, 7, 9, 11];
const averagePair = (arr = [], target = 1) => {
   let x = arr.length − 1;
   for (let y = 0; y < x; y++) {
      while (y < x && arr[x] + arr[y] > 2*target) {
         x−−;
      };
      if (x !== y && arr[x] + arr[y] === 2 * target) {
         return true;
      };
   };
   return false;
};
console.log(averagePair(arr, 6.5));

출력

콘솔의 출력은 -

true