Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Program rekursif untuk mencari elemen minimum dan maksimum tatasusunan dalam C++

Program rekursif untuk mencari elemen minimum dan maksimum tatasusunan dalam C++

WBOY
WBOYke hadapan
2023-08-31 19:37:05956semak imbas

Program rekursif untuk mencari elemen minimum dan maksimum tatasusunan dalam C++

Kami mengambil tatasusunan integer Arr[] sebagai input. Matlamatnya adalah untuk mencari elemen terbesar dan terkecil dalam tatasusunan menggunakan kaedah rekursif.

Memandangkan kami menggunakan rekursi, kami akan mengulangi keseluruhan tatasusunan sehingga kami mencapai panjang = 1 dan kemudian mengembalikan A[0], yang membentuk huruf asas. Jika tidak, elemen semasa dibandingkan dengan nilai minimum atau maksimum semasa dan nilainya dikemas kini secara rekursif untuk elemen berikutnya.

Mari kita lihat pelbagai senario input dan output untuk ini −

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

Output − Nilai maksimum dalam tatasusunan: 99

Penjelasan #🎜🎜🎜🎜 , 99 adalah nilai terbesar di kalangan mereka.

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

Output #🎜🎜 − Nilai minimum dalam tatasusunan: -99

Penjelasan

− Di antara semua elemen, -99 ialah nilai minimum. Kaedah yang digunakan dalam program di bawah adalah seperti berikut

Mencari nilai minimum

    mengambil array Arr [] sebagai input.
  • Fungsi recforMin(int arr[], int len) menerima tatasusunan input dan panjangnya, dan mengembalikan nilai minimum dalam tatasusunan menggunakan rekursi.
  • Dapatkan pembolehubah integer minimum
  • Jika len indeks semasa ialah 1, tetapkan minimum=arr 0 ] dan pulangan minimum.
  • Jika tidak tetapkan minimum = arr[len] atau nilai minimum recforMin(arr,len-1) dan kembalikannya.
  • Akhirnya elemen terkecil akan dikembalikan.
  • Cetak hasil dalam fungsi utama.
  • Cari nilai maksimum

    mengambil tatasusunan Arr[] sebagai input.
  • Fungsi recforMax(int ​​​​arr[], int len) menerima tatasusunan input dan panjangnya serta mengembalikan nilai maksimum dalam tatasusunan menggunakan rekursi.
  • Ambil pembolehubah integer maksimum.
  • Jika len indeks semasa ialah 1, tetapkan maksimum=arr[0] dan pulangkan maksimum.
  • Jika tidak tetapkan maksimum = arr[len] atau nilai maksimum recforMax(arr,len-1) dan kembalikannya.
  • Akhirnya elemen terbesar akan dikembalikan.
  • Cetak hasil dalam fungsi utama.
  • Menggunakan rekursi untuk mencari nilai minimum

Contoh

#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;
}
#🎜🎟##Output #🎜🎟##Output #🎜 Jika kita Menjalankan kod di atas akan menghasilkan output berikut

Minimum in the array :-89

Cari minimum menggunakan rekursi

Contoh

#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;
}

Output#🎜🎜 🎜# Jika kita menjalankan kod di atas, output berikut akan dihasilkan

Maximum in the array :-100

Atas ialah kandungan terperinci Program rekursif untuk mencari elemen minimum dan maksimum tatasusunan dalam C++. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam