Implantation
Contenu
Implantation¶
Rappels et exemples Python sur les dictionnaires et compréhensions¶
Suivez le tutoriel suivant: http://doc.sagemath.org/html/en/thematic_tutorials/tutorial-comprehensions.html
Puis analysez les exemples suivants:
l = [3,2,1,0]
[ i**2 for i in l ]
l = ["a", "z", "b"]
d = {l[i] : i for i in range(len(l))}
for v in d.keys():
print(v)
[(v, 1) for v in l]
Conversions¶
Exercice:
Choisissez une des structure de données de graphes que l’on a vues (liste d’arêtes, dictionnaire des voisins, dictionnaire d’arêtes, matrice d’adjacence).
Implantez des fonctions Python from_matrix
, from_edges
,
from_neighbor_dict
, from_edge_dict
. Par exemple, la fonction
from_matrix
prendra un graphe représenté par une matrice d’adjacence
et renverra le même graphe dans la structure de donnée que vous avez
choisi.
Testez ces fonctions sur les exemples de la fiche précédente.
Une classe graphe¶
Le fichier graph.py contient un squelette de classe pour représenter des graphes. Votre mission pour la prochaine séance est de compléter les méthodes non implantées. Le rapport contient des vérifications automatiques pour votre code. Utilisez le au fur et à mesure pour suivre votre avancement et complétez le.