Show the result of the following sequence of instructions: union(1,2), union(3,4), union(3,5), union(1,7), union(3,6), union(8,9), union(1,8), union(3,10), union (3,11), union(3,12), union(3,13), union(14,15), union(16,0), union(14,16), union (1,3), union(1, 14) when the unions are: a. Performed arbitrarily. b. Performed by height. c. Performed by size.
Read moreTextbook Solutions for Data Structures and Algorithm Analysis in Java
Question
Suppose we want to add an extra operation, remove(x), which removes x from itscurrent set and places it in its own. Show how to modify the union/find algorithmso that the running time of a sequence of M union, find, and remove operations isO(M(M,N)).
Solution
The first step in solving 8 problem number 11 trying to solve the problem we have to refer to the textbook question: Suppose we want to add an extra operation, remove(x), which removes x from itscurrent set and places it in its own. Show how to modify the union/find algorithmso that the running time of a sequence of M union, find, and remove operations isO(M(M,N)).
From the textbook chapter The Disjoint Set Class you will find a few key concepts needed to solve this.
Visible to paid subscribers only
Step 3 of 7)Visible to paid subscribers only
full solution