Consider the following alternative implimentation of the disjoint-sets data structure. class Partition: definit_(P,n): #sometimes called makeset (j) P.parent [j for j in range(n)] P.weight [1] * n - def find (P, key): if P.parent [key] != key: key P. find (P.parent [key]) M return key def union (P,x,y): rx = P.find(x) ry = P.find(y) if rx == ry: return if P.weight [rx] > P.weight[ry]: P.parent [ry] - rx P.weight [rx] += P.weight[ry] else: P.parent[rx] - ry P.weight [ry] + P.weight[rx]

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

Question 5

Full explain this question and text typing work only thanks

Consider the following alternative implimentation of the disjoint-sets data structure.
class Partition:
definit_(P,n):
# sometimes called makeset(j)
P.parent = [j for j in range(n)]
P.weight = [1] * n
def find(P, key):
if P.parent [key] != key:
key = P.find(P.parent [key])
return key
def union(P,x,y) ::
rx = P.find(x)
ry = P.find(y)
if rx == ry:
return
if P.weight[rx] > P.weight[ry]:
P.parent [ry] = rx
P.weight [rx] += P.weight[ry]
else:
P.parent [rx] ry
=
P.weight [ry] += P.weight[rx]
Prove that after any sequence of union operations, P.find(x) takes O(lg n) time.
Transcribed Image Text:Consider the following alternative implimentation of the disjoint-sets data structure. class Partition: definit_(P,n): # sometimes called makeset(j) P.parent = [j for j in range(n)] P.weight = [1] * n def find(P, key): if P.parent [key] != key: key = P.find(P.parent [key]) return key def union(P,x,y) :: rx = P.find(x) ry = P.find(y) if rx == ry: return if P.weight[rx] > P.weight[ry]: P.parent [ry] = rx P.weight [rx] += P.weight[ry] else: P.parent [rx] ry = P.weight [ry] += P.weight[rx] Prove that after any sequence of union operations, P.find(x) takes O(lg n) time.
Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Hash Table
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education