Advertisement
Guest User

Untitled

a guest
Jun 19th, 2018
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.68 KB | None | 0 0
  1.    
  2. class Noeud :
  3.  
  4.     def __init__(self, valeur = None, fils_gauche = None, fils_droit = None) :
  5.             self.valeur = valeur
  6.             self.fils_gauche = fils_gauche
  7.             self.fils_droit = fils_droit
  8.  
  9.     def getvaleur(self) :
  10.         return self.valeur
  11.  
  12.     def getfilsgauche(self) :
  13.         return self.fils_gauche
  14.  
  15.     def getfilsdroit(self) :
  16.         return self.fils_droit
  17.  
  18.     def setvaleur(self, valeur) :
  19.         self.valeur = valeur
  20.  
  21.     def ajouterFilsG(self, valeur) :
  22.         self.fils_gauche = valeur
  23.  
  24.     def ajouterFilsD(self, valeur) :
  25.         self.fils_droit = valeur
  26.  
  27.     def enleverFilsG(self, valeur) :
  28.         self.fils_gauche = None
  29.  
  30.     def enleverFilsD(self, valeur) :
  31.         self.fils_droit = None
  32.  
  33. def inserer(racine, noeud_tab) :
  34.     for el in noeud_tab :
  35.         print(el.getvaleur())
  36.         print("")
  37.     if len(noeud_tab) < 1 :
  38.         return 0
  39.     noeud_act = noeud_tab[0]
  40.     print(racine.getvaleur(), noeud_act.getvaleur(), racine.getfilsdroit(), racine.getfilsgauche())
  41.     if racine.getvaleur() < noeud_act.getvaleur() and racine.getfilsdroit() == None :
  42.         racine.ajouterFilsD(noeud_act)
  43.         noeud_tab.remove(noeud_tab[0])
  44.         inserer(racine, noeud_tab)
  45.         print("Ajout Droit")
  46.     if racine.getvaleur() > noeud_act.getvaleur() and racine.getfilsgauche() == None :
  47.         racine.ajouterFilsG(noeud_act)
  48.         noeud_tab.remove(noeud_tab[0])
  49.         inserer(racine, noeud_tab)
  50.         print("Ajout Gauche")
  51.     if racine.getvaleur() < noeud_act.getvaleur() :
  52.         inserer(racine.getfilsdroit(), noeud_tab)
  53.         print("Crawl Droit")
  54.     if racine.getvaleur() > noeud_act.getvaleur() :
  55.         inserer(racine.getfilsgauche(), noeud_tab)
  56.         print("Crawl Gauche")
  57.  
  58.  
  59. noeud_tab=[]
  60.  
  61. noeud_tab.append(Noeud(1))
  62. noeud_tab.append(Noeud(4))
  63. noeud_tab.append(Noeud(8))
  64.  
  65. inserer(Noeud(5), noeud_tab)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement