Bonjour à tous,

J'ai un projet églament c'est de coder l'algo de Prim en Python : je n'ai fait que 6 mois de python au paravant, excusez mon niveau !

J'ai généré un petit code mais il me renvoit un arbre vide... Je ne vois pas où est l'erreur...
Merci pour votre aide !

Bien cordialement,

Nora

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# -*-coding: utf-8 -*-
 
def ASortantes(G,Y): #aretes sortantes
 
    if x in Y or y in Y:
        AS={(v,x,y) for (v,x,y) in G}
    return(AS)
 
 
def Prim(G):
    Tree=[]
    X=set()
    n=len(X)
    Y={0}
    a=0
    while a<n-1:
            AS=ASortantes(G,Y)
            AS.sort()
            (v,x,y)=AS[0]
            Y=Y.union([x,y])
            Tree.append((v,x,y))
            a=a+1
    return Tree
 
 
G = [(7,0,1),(7,0,2),(3,0,3),(6,0,8),(8,1,7),(3,1,4),(1,2,4),(9,3,5),(1,4,7),(4,4,6),(3,4,5),(2,5,6),(2,5,8),(2,6,8),(5,7,8)]
print (Prim(G))