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

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

WBOY
Lepaskan: 2023-08-31 19:37:05
ke hadapan
1021 orang telah melayarinya

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

Minimum in the array :-89
Salin selepas log masuk

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;
}
Salin selepas log masuk

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

Maximum in the array :-100
Salin selepas log masuk

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!

Label berkaitan:
sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan