>백엔드 개발 >C++ >C++에서 배열의 최소 및 최대 요소를 찾는 재귀 프로그램

C++에서 배열의 최소 및 최대 요소를 찾는 재귀 프로그램

WBOY
WBOY앞으로
2023-08-31 19:37:051020검색

C++에서 배열의 최소 및 최대 요소를 찾는 재귀 프로그램

정수 배열 Arr[]을 입력으로 사용합니다. 목표는 재귀적 방법을 사용하여 배열에서 가장 큰 요소와 가장 작은 요소를 찾는 것입니다.

재귀를 사용하고 있으므로 길이=1에 도달할 때까지 전체 배열을 반복한 다음 기본 사례를 구성하는 A[0]을 반환합니다. 그렇지 않은 경우 현재 요소는 현재 최소값 또는 최대값과 비교되고 해당 값은 후속 요소에 대해 반복적으로 업데이트됩니다.

이에 대한 다양한 입력 및 출력 시나리오를 살펴보겠습니다. −

Input − Arr= {12,67,99,76,32};

Output − 배열의 최대값: 99

설명 − 모든 요소 중에서 99가 가장 큰 값입니다.

Input − Arr= {1,0,-99,9,3};

Output − 배열의 최소값: -99

Explanation − 모든 요소 중에서 -99는 최소값.

아래 프로그램에서 사용한 방법은 다음과 같습니다

최소값 찾기

  • Arr[] 배열을 입력으로 사용합니다.

  • 함수 recforMin(int arr[], int len)은 입력 배열과 해당 길이를 받아들이고 재귀를 사용하여 배열의 최소값을 반환합니다.

  • 정수 변수 최소값 가져오기

  • 현재 인덱스 len이 1이면 최소값=arr[0]을 설정하고 최소값을 반환합니다.

  • 그렇지 않으면 최소 = arr[len] 또는 recforMin(arr,len-1)의 최소값을 설정하고 반환합니다.

  • 마지막으로 가장 작은 요소가 반환됩니다.

  • 메인 함수에서 결과를 인쇄하세요.

최대값 찾기

  • 는 Arr[] 배열을 입력으로 사용합니다.

  • 함수 recforMax(int ​​​​arr[], int len)는 입력 배열과 해당 길이를 받아들이고 재귀를 사용하여 배열의 최대값을 반환합니다.

  • 정수 변수를 최대값으로 사용하세요.

  • 현재 인덱스 len이 1이면 maximum=arr[0]으로 설정하고 maximum을 반환합니다.

  • 그렇지 않으면 maximum = arr[len] 또는 recforMax(arr,len-1)의 최대값을 설정하고 반환합니다.

  • 가장 큰 요소가 마지막에 반환됩니다.

  • 메인 함수에서 결과를 인쇄하세요. RECURSIONS emexampling

    #include <iostream>
    using namespace std;
    int recforMin(int arr[], int len){
       int minimum;
       if (len == 1){
          minimum=arr[0];
          return minimum;
       }
       else{
          return minimum=arr[len]<recforMin(arr,len-1)?arr[len]:recforMin(arr,len-1);
       }
    }
    int main(){
       int Arr[] = {-89,98,76,32,21,35,100};
       int length = sizeof(Arr)/sizeof(Arr[0]);
       cout <<"Minimum in the array :"<<recforMin(Arr, length);
       return 0;
    }
  • outputing을 사용하여 최소값을 찾아냅니다. 위의 코드를 실행하면 다음 출력이 생성됩니다.
    Minimum in the array :-89
find 최소 값 RECURSIONG

RR
#include <iostream>
using namespace std;
int recforMax(int arr[], int len){
   int maximum;

   if (len == 1){
      maximum=arr[0];
      return maximum;
   }
   else{
      return maximum=arr[len]>recforMax(arr,len-1)?arr[len]:recforMax(arr,len-1);
   }
}
int main(){
   int Arr[] = {-89,98,76,32,21,35,100};
   int length = sizeof(Arr)/sizeof(Arr[0]);
   cout <<"Maximum in the array :"<<recforMax(Arr, length);
   return 0;
}

OUTPUTAPOUTOPOUTPUTAPO. 위 코드를 실행하면 다음 출력이 생성됩니다

Maximum in the array :-100

위 내용은 C++에서 배열의 최소 및 최대 요소를 찾는 재귀 프로그램의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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