Pre-requisites: Divide and conquer
Problem: To find the stack image when merge sort is called.
This problem can be solved in two ways:
By simulating merge sort and printng
the calls made.
Using binary search:
In this approach the given size is divided into 2 parts using
mid=(L+R)/2; if(mid>=N) //N is the index to be found R=mid; //Shift the right pointer to middle i.e. index lies between middle and left else L=mid+1; //Shift the left pointer to middle+1 i.e. index lies between middle and right
Using the second one is more preferable.
Problem setter’s solution: SOLUTION