class Graphe: """un graphe représenté par une matrice d'adjacence, où les sommets sont les entiers 0,1,...,n-1""" def __init__(self, n): self.n = n self.adj = [[False] * n for _ in range(n)] def ajouter_arc(self, s1, s2): self.adj[s1][s2] = True def arc(self, s1, s2): return self.adj[s1][s2] def voisins(self, s): v = [] for i in range(self.n): if self.adj[s][i]: v.append(i) return v