배열이 주어지면 크기가 3인 역방향 쌍의 수를 계산하는 PHP 프로그램을 작성하세요.

PHPz
풀어 주다: 2023-09-02 19:50:01
앞으로
532명이 탐색했습니다.

배열이 주어지면 크기가 3인 역방향 쌍의 수를 계산하는 PHP 프로그램을 작성하세요.

다운 카운팅은 특정 배열에 대해 수행된 정렬 단계 수를 계산할 수 있는 단계 계산 방법입니다. 또한 배열의 작동 시간 범위를 계산할 수도 있습니다. 그러나 배열을 반대 방식으로 정렬하려는 경우 개수는 배열에 있는 최대 개수가 됩니다.

으아아아

반전 횟수는 해당 특정 배열이 오름차순으로 정렬되는 정도를 나타냅니다. 다음은 솔루션과 함께 이 상황을 설명하는 두 가지 구체적인 절차입니다.

  • 더 작은 요소를 찾으려면 - 배열에서 더 작은 요소를 찾으려면 n-1에서 0까지 인덱스를 반복해야 합니다. (a[i]-1)을 적용하면 여기서 getSum()을 계산할 수 있습니다. 프로세스는 a[i]-1에 도달할 때까지 실행됩니다.

  • 더 큰 숫자를 찾으려면 - 인덱스에서 더 큰 숫자를 찾으려면 0에서 n-1까지 반복을 수행해야 합니다. 각 요소에 대해 a[i]까지 각 숫자를 계산해야 합니다. i에서 빼세요. 그러면 a[i]보다 큰 숫자를 얻게 됩니다.

배열에서 크기 3의 반전을 계산하는 알고리즘:-

이 알고리즘에서는 특정 프로그래밍 환경에서 주어진 배열의 크기 3의 반전을 계산하는 방법을 배웁니다.

  • 1단계 - 시작하기

  • 2단계 - 배열을 선언하고 개수를 반전시킵니다(예: arr[] --> 배열 및 invCount --> 개수 반전)

  • 3단계 - 내부 루프 y=x+1에서 N까지

  • 4단계 - x의 요소가 y 인덱스의 요소보다 큰 경우

  • 5단계 - 그런 다음 invCount++

  • 를 늘립니다.
  • 6단계 - 쌍 인쇄

  • 7단계 - 종료

배열에서 크기 3의 반전을 계산하는 구문: -

다음 조건이 충족되면 쌍(A[i], A[j])이 반전된 상태에 있다고 합니다. A[i] > A[j] 및 i

C++ 구현

으아아아

Java 구현

으아아아

파이썬 구현

으아아아

PHP 구현

으아아아

여기서 우리는 주어진 배열에서 크기 3의 반전을 계산하는 데 가능한 구문을 언급했습니다. 이 방법의 경우 시간 복잡도: O(N^2), 여기서 N은 배열의 전체 크기입니다. 공간 복잡도는 추가 공간이 사용되지 않으므로 O(1)입니다.

따라야 할 방법:-

  • 방법 1 - 크기 3의 반전을 계산하는 프로그램을 통해 주어진 배열에서 크기 3의 반전을 계산

  • 방법 2 - 크기 3의 반전을 계산하는 더 나은 방법

  • 방법 3 - 이진 인덱스 트리를 사용하여 크기 3의 반전 계산

크기 3의 반전을 계산하는 프로그램을 통해 주어진 배열에서 크기 3의 반전을 계산합니다

크기 3의 반전을 계산하는 간단한 방법을 위해 i, j 및 k의 가능한 모든 값에 대해 루프를 실행해야 합니다. 시간 복잡도는 보조 공간을 반영하여 O(n^3), O(1)입니다.

조건은 다음과 같습니다.

a[i] > a[j] > a[k] 그리고 i

예 1

으아아아

출력

으아아아

크기 3의 반전을 계산하는 더 좋은 방법

이 방법에서는 배열의 각 요소를 반전된 중간 요소로 처리합니다. 복잡성을 줄이는 데 도움이 됩니다. 이 접근 방식의 경우 시간 복잡도는 O(n^2)이고 보조 공간은 O(1)입니다.

예 2

으아아아

출력

으아아아

이진 인덱스 트리를 사용하여 크기 3의 반전을 계산합니다

이 방법에서는 더 큰 요소와 더 작은 요소도 계산합니다. 그런 다음 더 큰[]과 더 작은[]의 곱셈을 수행하고 이를 최종 결과에 추가합니다. 여기서 시간복잡도는 O(n*log(n))이며, 보조공간은 O(n)으로 표현된다.

예 3

으아아아

출력

으아아아

결론

이 글에서는 주어진 배열에서 크기 3의 반전을 계산하는 방법을 살펴보겠습니다. 이 기사와 특정 언어를 사용한 언급된 코드를 통해 주제에 대한 폭넓은 이해를 얻었기를 바랍니다.

위 내용은 배열이 주어지면 크기가 3인 역방향 쌍의 수를 계산하는 PHP 프로그램을 작성하세요.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!