Select Git revision
exceptions.py
-
Romain Vuillemot authoredRomain Vuillemot authored
graph-check-color.py 803 B
class Node:
def __init__(self, v = None, n = []):
self.v = v
self.n = n
self.visited = False
def verifier(r):
stack = [r]
while len(stack) > 0:
c = stack.pop(0)
for n in c.n:
if(c.v == n.v): # meme couleur
print("deux voisins de meme couleur")
return False
if not n.visited:
stack.append(n)
n.visited = True
return True
if __name__=="__main__":
n1 = Node("gray")
n2 = Node("black")
n3 = Node("gray")
n4 = Node("gray")
n5 = Node("black")
n6 = Node("gray")
n1.n = [n2]
n2.n = [n1, n3, n4]
n3.n = [n2, n5]
n4.n = [n2, n5]
n5.n = [n3, n4, n6]
n6.n = [n5]
print(verifier(n1)) # True