배열을 증가하지 않는 순서로 정렬하는 데 필요한 회전 수를 계산하는 프로그램을 작성하겠습니다. 프로그램은 루프를 사용하여 배열을 반복하고 지금까지 발견된 가장 큰 요소를 추적합니다. 더 작은 요소가 발견되면 스핀 수를 늘리고 가장 큰 요소를 업데이트합니다. 마지막으로 회전 횟수가 프로그램 결과로 반환됩니다. 이 프로그램은 배열을 효율적으로 정렬하고 비증가 순서를 달성하는 데 필요한 회전 수를 결정하는 데 도움이 됩니다.
배열을 비증가순으로 정렬하는 데 필요한 회전을 계산하는 방법은 다음과 같습니다. -
배열을 정렬된 부분과 정렬되지 않은 부분의 두 부분으로 나눕니다.
필요한 회전 수는 정렬된 부분의 요소 수와 같습니다.
정렬된 섹션을 찾으려면 배열을 오른쪽에서 왼쪽으로 탐색하면서 가장 큰 요소를 추적하세요.
더 작은 요소가 발견되면 루프를 중단하고 정렬된 부분의 길이를 반환합니다.
루프가 완료되면 전체 배열이 정렬되므로 0이 반환됩니다.
다음은 비증가순으로 배열을 정렬하는 데 필요한 회전 수를 계산하는 완전한 JavaScript 예입니다. -
으아악함수 countRotations는 배열을 매개변수로 사용합니다.
n은 배열의 길이로 초기화됩니다.
minIndex 및 minValue는 각각 0과 배열의 첫 번째 요소로 초기화됩니다.
for 루프는 두 번째 요소부터 시작하여 배열을 반복하여 배열에서 가장 작은 요소의 인덱스와 값을 찾습니다. 더 작은 요소가 발견되면 minIndex 및 minValue가 해당 인덱스와 값으로 업데이트됩니다.
마지막으로 함수는 배열을 증가하지 않는 순서로 정렬하는 데 필요한 회전 수인 minIndex, 를 반환합니다.
이 예에서 배열은 [15, 18, 2, 3, 6, 12],이고 가장 작은 요소는 2이며 는 인덱스 2에 있습니다. 배열을 오름차순이 아닌 순서로 정렬하려면, 2가 필요합니다. 배열의 끝에 배치하므로 필요한 회전 수는 2 >.
입니다.위 내용은 주어진 배열을 증가하지 않는 순서로 정렬하는 데 필요한 회전 수를 계산하는 JavaScript 프로그램의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!