>  기사  >  웹 프론트엔드  >  평균이 가장 작은 하위 배열을 찾는 JavaScript 프로그램

평균이 가장 작은 하위 배열을 찾는 JavaScript 프로그램

WBOY
WBOY앞으로
2023-08-23 23:33:131023검색

JavaScript 程序查找平均值最小的子数组

평균이 가장 작은 하위 배열을 찾는 프로그램을 작성하겠습니다. 이를 위해 배열을 반복하고 현재 하위 배열과 그 합계를 추적합니다. 각 요소에 대해 현재 하위 배열의 평균을 계산하고 이를 지금까지 본 가장 작은 평균과 비교할 것입니다. 이 값이 더 낮으면 하위 배열의 최소 평균과 시작 및 끝 인덱스를 업데이트합니다. 반복이 끝나면 평균이 가장 작은 하위 배열을 반환합니다.

방법

평균이 가장 작은 하위 배열을 찾으려면 다음 단계를 따르세요. -

  • 하위 배열의 시작 및 끝 인덱스를 추적하기 위해 두 개의 변수 startend를 초기화합니다.

  • for 를 사용하여 배열을 반복하면서 현재 합계와 지금까지 발견된 가장 작은 평균을 추적합니다.

  • 각 반복에서 현재 합계를 최소 평균과 비교하고 새로운 최소값이 발견되면 StartEnd 변수를 업데이트합니다.

  • 현재 합계가 최소 평균보다 큰 경우 합계가 최소 평균보다 작아질 때까지 시작 인덱스를 앞으로 이동합니다.

  • 배열의 끝에 도달할 때까지 2~4단계를 반복하세요.

  • 평균이 가장 작은 하위 배열은 start에서 시작하여 end에서 끝나는 하위 배열입니다.

정수 배열이 주어지면 평균이 가장 작은 하위 배열을 찾습니다.

다음은 이 문제를 해결하기 위해 완벽하게 작동하는 JavaScript 예제입니다. -

으아악

지침

  • 함수 findSmallestAverageSubarray는 정수 배열 arr 및 정수 k를 입력으로 사용합니다. 여기서 k는 하위 배열입니다.

  • 함수는 평균이 가장 작은 하위 배열을 반환합니다.

  • minAvg변수는 부동 소수점 숫자의 가능한 가장 큰 값으로 초기화됩니다.

  • minAvgStart 변수는 평균이 가장 작은 하위 배열의 시작 인덱스를 저장하는 데 사용됩니다.

  • windowSum 변수는 현재 하위 배열의 요소 합계를 저장하는 데 사용됩니다.

  • 외부 루프for (let i = 0; i 주어진 배열 arr에서 길이 k을 반복하는 경우.

  • 내부 루프for (let j = 0; j 는 현재 하위 배열에 있는 요소의 합을 계산하는 데 사용됩니다.

  • if (i === 0) 블록은 첫 번째 하위 배열에 있는 요소의 합을 계산하는 데 사용됩니다.

  • else 블록은 나머지 하위 배열의 요소 합계를 계산하는 데 사용됩니다. 이전 하위 배열의 첫 번째 요소를 빼고 현재 하위 배열의 마지막 요소를 추가합니다.

  • windowAvg 변수는 현재 하위 배열의 평균값을 저장하는 데 사용됩니다.

  • if (windowAvg 블록은 최소 평균과 하위 배열의 시작 인덱스를 최소 평균으로 업데이트하는 데 사용됩니다.

  • 마지막으로 이 함수는 평균이 가장 작은 하위 배열을 반환합니다.

위 내용은 평균이 가장 작은 하위 배열을 찾는 JavaScript 프로그램의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제