The Quick Union implementation assumes that the root nodes are assigned a parent ID of “-1". If I wanted to change this and set root nodes to have a parent ID of "O" instead of "-1", which lines in the following code would change? Select all that should change.

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

.....    ... 

The Quick Union implementation assumes that the root nodes are assigned a parent ID of “-1".
If I wanted to change this and set root nodes to have a parent ID of "0" instead of "-1", which
lines in the following code would change? Select all that should change.
1
class QuickUnion:
def
init (self, size: int) -> None:
CHOICES (Select all that may apply.)
4
size: number of elements to initialize
6.
self.size = size
a. None of the above
7
self.parent = [-1]*self.size
b. Line 16
8.
c. Line 15
str_(self) -> str:
return f"parent: {self.parent}"
9.
def
10
d. Line 26
11
def get_root(self, p: int) -> int:
""Find the root of p"""
12
e. Line 20
13
f. Line 7
14
idx = p
while self. parent[idx] >= 0:
idx = self.parent[idx]
15
16
17
return idx
18
def is connected(self, pl: int, p2:int) -> bool:
return self.get_root(p1) == self.get_root(p2)
19
20
21
def connect (self, pl: int, p2: int) -> None:
"""Connects pl and p2"" "
rl = self.get_root(p1)
r2 = self.get_root(p2)
self.parent[rl] = r2
22
23
24
25
26
Transcribed Image Text:The Quick Union implementation assumes that the root nodes are assigned a parent ID of “-1". If I wanted to change this and set root nodes to have a parent ID of "0" instead of "-1", which lines in the following code would change? Select all that should change. 1 class QuickUnion: def init (self, size: int) -> None: CHOICES (Select all that may apply.) 4 size: number of elements to initialize 6. self.size = size a. None of the above 7 self.parent = [-1]*self.size b. Line 16 8. c. Line 15 str_(self) -> str: return f"parent: {self.parent}" 9. def 10 d. Line 26 11 def get_root(self, p: int) -> int: ""Find the root of p""" 12 e. Line 20 13 f. Line 7 14 idx = p while self. parent[idx] >= 0: idx = self.parent[idx] 15 16 17 return idx 18 def is connected(self, pl: int, p2:int) -> bool: return self.get_root(p1) == self.get_root(p2) 19 20 21 def connect (self, pl: int, p2: int) -> None: """Connects pl and p2"" " rl = self.get_root(p1) r2 = self.get_root(p2) self.parent[rl] = r2 22 23 24 25 26
Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Types of trees
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.
Similar questions
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