मेरे पास कल एक कंप्यूटर साइंस मिडटर्म है और मुझे इन पुनरावर्ती कार्यों की जटिलता को निर्धारित करने में सहायता की आवश्यकता है। मुझे पता है कि सरल मामलों को कैसे हल किया जाता है, लेकिन मैं अभी भी सीखने की कोशिश कर रहा हूं कि इन कठिन मामलों को कैसे हल किया जाए। ये केवल कुछ उदाहरण समस्याएं थीं जिनका मैं पता नहीं लगा सका। किसी भी मदद की बहुत सराहना की जाएगी और मेरी पढ़ाई में बहुत मदद मिलेगी, धन्यवाद!
int recursiveFun1(int n)
{
if (n <= 0)
return 1;
else
return 1 + recursiveFun1(n-1);
}
int recursiveFun2(int n)
{
if (n <= 0)
return 1;
else
return 1 + recursiveFun2(n-5);
}
int recursiveFun3(int n)
{
if (n <= 0)
return 1;
else
return 1 + recursiveFun3(n/5);
}
void recursiveFun4(int n, int m, int o)
{
if (n <= 0)
{
printf("%d, %d\n",m, o);
}
else
{
recursiveFun4(n-1, m+1, o);
recursiveFun4(n-1, m, o+1);
}
}
int recursiveFun5(int n)
{
for (i = 0; i < n; i += 2) {
// do something
}
if (n <= 0)
return 1;
else
return 1 + recursiveFun5(n-5);
}