Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

주어진 배열이 C++에서 쌍으로 정렬되었는지 확인하십시오.

<시간/>

n개의 요소가 있는 배열 A가 있습니다. 배열이 쌍으로 정렬되었는지 여부를 확인해야 합니다. 배열이 {8, 10, 18, 20, 5, 15}와 같다고 가정합니다. 이것은 (8, 10), (18, 20), (5, 15)가 정렬되어 쌍으로 정렬됩니다. 배열에 홀수개의 요소가 있으면 마지막 요소는 무시됩니다.

접근 방식은 너무 간단합니다. I를 0에서 n-1로 가져와 i번째 요소가 i+1번째 요소보다 작은지 여부를 확인하고 그렇지 않은 경우 false를 반환하고 그렇지 않으면 I를 2만큼 증가시킵니다.

예시

#include <iostream>
#include <cmath>
using namespace std;
bool isPairwiseSorted(int arr[], int n) {
   if(n <= 1)
      return true;
   for(int i = 0; i<n; i += 2){
      if(arr[i] > arr[i + 1])
         return false;
   }
   return true;
}
int main() {
   int arr[] = {8, 10, 18, 20, 5, 15};
   int n = sizeof(arr)/sizeof(arr[0]);
   if(isPairwiseSorted(arr, n)){
      cout << "This is pairwise sorted";
   } else {
      cout << "This is not pairwise sorted";
   }
}

출력

This is pairwise sorted