हमें एक पूर्णांक सरणी Arr[] इनपुट के रूप में दी गई है। लक्ष्य है पुनरावर्ती विधियों का उपयोग करके सरणी के बीच अधिकतम और न्यूनतम तत्वों को ढूंढना।
चूंकि हम पुनरावर्तन का उपयोग कर रहे हैं, हम पूरी सरणी को तब तक ट्रैवर्स करेंगे जब तक हम लंबाई=1 तक नहीं पहुंच जाते, फिर A[0] लौटाते हैं जो आधार मामला बनाता है। अन्यथा वर्तमान तत्व की तुलना वर्तमान न्यूनतम या अधिकतम से करें और बाद के तत्वों के लिए पुनरावर्तन करके इसके मान को अपडेट करें।
विभिन्न इनपुट-आउटपुट परिदृश्य
इनपुट - Arr= {12,67,99,76,32};
आउटपुट - सरणी में अधिकतम: 99
व्याख्या - सभी तत्वों में से 99 अधिकतम है।
इनपुट - Arr= {1,0,-99,9,3};
आउटपुट - सरणी में न्यूनतम: -99
व्याख्या - सभी तत्वों में से -99 न्यूनतम है।
उपयोग किया गया दृष्टिकोण
न्यूनतम खोजने के लिए
इनपुट के रूप में सरणी Arr[] लें।
फ़ंक्शन recforMin(int arr[], int len) इनपुट सरणी और इसकी लंबाई लेता है और पुनरावर्तन का उपयोग करके सरणी में न्यूनतम लौटाता है।
पूर्णांक वेरिएबल minimum लें
यदि वर्तमान इंडेक्स len 1 है तो minimum=arr[0] सेट करें और minimum लौटाएं।
अन्यथा minimum = arr[len] या recforMin(arr,len-1) का न्यूनतम सेट करें और इसे लौटाएं।
अंत में न्यूनतम तत्व लौटाया जाएगा।
main के अंदर प्राप्त परिणाम प्रिंट करें।
अधिकतम खोजने के लिए
अधिकतम खोजने के लिए
इनपुट के रूप में सरणी Arr[] लें।
फ़ंक्शन recforMax(int arr[], int len) इनपुट सरणी और इसकी लंबाई लेता है और पुनरावर्तन का उपयोग करके सरणी में अधिकतम लौटाता है।
पूर्णांक वेरिएबल maximum लें।
यदि वर्तमान इंडेक्स len 1 है तो maximum=arr[0] सेट करें और maximum लौटाएं।
अन्यथा maximum = arr[len] या recforMax(arr,len-1) का अधिकतम सेट करें और इसे लौटाएं।
अंत में अधिकतम तत्व लौटाया जाएगा।
main के अंदर प्राप्त परिणाम प्रिंट करें।
पुनरावर्तन का उपयोग करके न्यूनतम खोजना
उदाहरण
#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