I'm having a hell of a hard time trying to figure out why my print(Node(3).value) is printing 0. Any ideas?
When I run this code, I get
First: 6 Value: 8 Children: [9]
First: 8 Value: 23 Children: [9]
First: 3 Value: 3 Children: [5]
First: 6 Value: 8 Children: [7]
First: 4 Value: 20 Children: [8]
First: 1 Value: 17 Children: [8]
First: 8 Value: 23 Children: [10]
First: 5 Value: 11 Children: [8]
First: 1 Value: 17 Children: [2]
0
Any ideas? I know I'm not saving the Nodes anywhere but my mind can't wrap around it. Any help would be appreciated, thanks!
# Complete the primeQuery function below.
n = 10
first = [6, 8, 3, 6, 4, 1, 8, 5, 1]
second = [9, 9, 5, 7, 8, 8, 10, 8, 2]
values = [17, 29, 3, 20, 11, 8, 3, 23, 5, 15]
queries = [1, 8, 9, 6, 4, 3]
class Node(object):
    def __init__(self, data, value=0):
        self.data = data
        self.value = value
        self.children = []
    def addChild(self, child):
        self.children.append(child)
    def setValue(self, givenV):
        self.value = givenV
def primeQuery(n, first, second, values, queries):
    i = 0
    while i < n - 1:
        f = Node(first[i], values[first[i] - 1])
        s = Node(second[i], values[second[i] - 1])
        f.addChild(s.data)
        print(f"First: {f.data} Value: {f.value} Children: {f.children}")
        i += 1
    print(Node(3).value)
primeQuery(n, first, second, values, queries)
 
    