Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Noeud :
- def __init__(self, valeur = None, fils_gauche = None, fils_droit = None) :
- self.valeur = valeur
- self.fils_gauche = fils_gauche
- self.fils_droit = fils_droit
- def getvaleur(self) :
- return self.valeur
- def getfilsgauche(self) :
- return self.fils_gauche
- def getfilsdroit(self) :
- return self.fils_droit
- def setvaleur(self, valeur) :
- self.valeur = valeur
- def ajouterFilsG(self, valeur) :
- self.fils_gauche = valeur
- def ajouterFilsD(self, valeur) :
- self.fils_droit = valeur
- def enleverFilsG(self, valeur) :
- self.fils_gauche = None
- def enleverFilsD(self, valeur) :
- self.fils_droit = None
- def inserer(racine, noeud_tab) :
- for el in noeud_tab :
- print(el.getvaleur())
- print("")
- if len(noeud_tab) < 1 :
- return 0
- noeud_act = noeud_tab[0]
- print(racine.getvaleur(), noeud_act.getvaleur(), racine.getfilsdroit(), racine.getfilsgauche())
- if racine.getvaleur() < noeud_act.getvaleur() and racine.getfilsdroit() == None :
- racine.ajouterFilsD(noeud_act)
- noeud_tab.remove(noeud_tab[0])
- inserer(racine, noeud_tab)
- print("Ajout Droit")
- if racine.getvaleur() > noeud_act.getvaleur() and racine.getfilsgauche() == None :
- racine.ajouterFilsG(noeud_act)
- noeud_tab.remove(noeud_tab[0])
- inserer(racine, noeud_tab)
- print("Ajout Gauche")
- if racine.getvaleur() < noeud_act.getvaleur() :
- inserer(racine.getfilsdroit(), noeud_tab)
- print("Crawl Droit")
- if racine.getvaleur() > noeud_act.getvaleur() :
- inserer(racine.getfilsgauche(), noeud_tab)
- print("Crawl Gauche")
- noeud_tab=[]
- noeud_tab.append(Noeud(1))
- noeud_tab.append(Noeud(4))
- noeud_tab.append(Noeud(8))
- inserer(Noeud(5), noeud_tab)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement