What do you mean by Base case, Recursive case, Binding Time,
Run-Time Stack and Tail Recursion?
Answer Posted / wonder surong
These terms are found in Recursion.
1.Base Case:it is the case in recursion where the answer is
known,or we can say the termination condition for a
recursion to unwind back.
For example to find Factorial of num using recursion:
int Fact(int num){
if(num==1 || num==0)//base case
return 1;
else // recursive case:
return num*Fact(num-1);
}
2.Recursive case:It is the case whcih brings us to the
closer answer.
Run Time Stack:It is a system stack us to save the frame
stack of a function every recursion or every call.
This frame stack consists of the return address,local
variables and return value if any.
Tail Recursion:The case where the function consist of
single recursive call and it is the last statement to be
executed.A tail Recursion can be replace by iteration.
The above funtion consists of tail recursion case.
where as the below function does not.
void binary(int start,int end,int el){
int mid;
if(end>start){
mid=(start+end)/2;
if(el==ar[mid])
return mid;
else{
if(el>ar[mid])
binary(mid+1,end,ele);
else
binary(start,mid-11,ele);
}
}
}
| Is This Answer Correct ? | 38 Yes | 2 No |
Post New Answer View All Answers
Why would you use a linked list?
Compare Queue and Topic ?
Why quicksort is faster?
What is the most used data structure?
What is dequeue operation?
What are different types of sorting algorithms?
Which is best array or linked list?
What is the difference between a hashmap and hashtable?
Explain Array of pointers?
Questions related to arrays, such as given a 2 integer array, find the common elements.
Can tuple be sorted?
Does arraylist allow null values?
Write the importance of hashing?
How do you find a string is anagram or not?
How do you sort a collection in descending order?