Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

So far we assumed that parameter passing during procedure calls takes constant time, even if an N-element array or sequence is being passed. This assumption

image text in transcribed

image text in transcribed

So far we assumed that parameter passing during procedure calls takes constant time, even if an N-element array or sequence is being passed. This assumption is usually valid as most systems pass a pointer to the array not the array itself, which is called call by reference. 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 value: copying the entire array. Time =(N), where N is the number of elements in the array. (c) Call by a partial value: arrays are passed by copying only the subrange that might be accessed by the called procedure. Time =(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 search def binary_search(sequence, start, end, key): if end = (end + start) //2 if sequence [middle] = key: return True elif sequence [middle] > key: return binary_search(sequence, start, middle - 1, key) else: return binary_search(sequence, middle +1, end, key) (b) Merge sort Give 6 recurrences for the worst-case running 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 bounds

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

MySQL/PHP Database Applications

Authors: Brad Bulger, Jay Greenspan, David Wall

2nd Edition

0764549634, 9780764549632

More Books

Students also viewed these Databases questions