Question: So far we assumed that parameter passing during procedure calls takes constant time, even if an N-element array or sequence is being pased. This assumption
So far we assumed that parameter passing during procedure calls takes constant time, even if an N-element array or sequence is being pased. This assumption is usually valid as most systems pass a pointer to the array not the array itself, which is called call by refenence. However, some settings, problems, or systems, may require call by value semantics. Let's consider the 3 following ways to pass array to a function in the code considered thus far: (a) Call by reference: a pointer is passed. Time =(1). (b) Call by vulue: copying the entire array. Time =(N), where N is the number of elements in the arraty. (c) Call by a partial value: arrays are pased by copying only the subrange that night be accessed by the called procedure. Tine =(n) if the subarray contains n elements. Consider the following 2 algorithms we have already worked with in Homework 1 and in the lectures: (a) Binary seardi (b) Merge sort Give 6 recarrences for the worst-case ranning times of each of the two algorithms above when arrays are passed using each of the three parameter-passing strategies above. Solve your recurrences giving tight asymptotic bounde
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
