Unit 2: Divide and Conquer - Subjective Questions

ECAP538 • Practice Questions with Detailed Answers

20 questions

1

Define the divide-and-conquer technique. Explain its three fundamental steps with a suitable example.

2

Describe the general recursive structure of a divide-and-conquer algorithm and formulate its standard recurrence relation.

3

State and explain the Master Theorem for solving divide-and-conquer recurrences of the form .

4

Compare divide-and-conquer with the decrease-and-conquer strategy.

5

Explain the binary search algorithm and derive its worst-case time complexity.

6

Trace binary search for the key in the sorted array .

7

Distinguish between iterative and recursive implementations of binary search.

8

Describe the merge sort algorithm and explain the purpose of its merge operation.

9

Derive the time complexity of merge sort using a recursion tree.

10

Discuss the stability, space complexity, advantages, and limitations of merge sort.

11

Explain the quick sort algorithm and the role of partitioning.

12

Compare the Lomuto and Hoare partition schemes used in quick sort.

13

Derive the best-case and worst-case time complexities of quick sort.

14

Explain how pivot selection affects quick sort. Discuss three pivot-selection strategies.

15

Compare merge sort and quick sort with respect to performance, memory, stability, and applications.

16

Explain how divide and conquer can be used to multiply two large integers by splitting each integer into high and low halves.

17

Derive Karatsuba's large-integer multiplication formula and analyze its time complexity.

18

Use Karatsuba's method to multiply and , showing the principal intermediate values.

19

Compare grade-school multiplication, four-product divide-and-conquer multiplication, and Karatsuba multiplication for large integers.

20

Discuss the practical issues involved in implementing divide-and-conquer arithmetic for very large integers.