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.
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
#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; }
Minimum in the array :-89
#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; }
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!