Ejemplo n.º 1
0
def maxPar2Approx(V):
    tree = {}
    for i in V:
        final.append(i)
    V = range(0, len(final))
    head = 0
    G = fullyConnectedGraph(V)
    T = nx.minimum_spanning_tree(G)
    addToTree(tree, T, head)

    # adjust nodes to add transition of generations
    for node in tree:
        final.append(final[node])
        tree[node].append(node)
    return head, tree
Ejemplo n.º 2
0
def maxPar(V):
    tree = {}
    for i in V:
        final.append(i)
    V = range(0, len(final))
    head = None
    while len(V) > 1:
        G = fullyConnectedGraph(V)
        T = nx.minimum_spanning_tree(G)
        A = []
        while T.number_of_edges() > 0:
            u,v = cheapestEdge(T)
            A.append( (u,v) )
            if T.number_of_nodes() == 2:
                head = len(final)
            T.remove_node(u)
            T.remove_node(v)
        V = T.nodes()
        ObtainAnc(A,tree, V)
    return head, tree