Bonsoir messieurs dames,
j'ai grandement besoin d'aide car ce code python que j'ai implenté moi-même de fonctionne pas, il est pourtant simple je pense:
class ArbreBinaire:
def __init__(self,val,fd,fg):
self.val = val
self.fd = fd
self.fg = fg
self.hauteur = 1
def estVide(self):
if self is None:
return True
return False
def prefixe(self): #rgd
if not self.estVide():
print(self.val)
prefixe(self.fg)
prefixe(self.fd)
def infixe(self): #grd
if not self.estVide():
infixe(self.fg)
print(self.value)
infixe(self.fd)
def suffixe(self): #gdr
if not self.estVide():
suffixe(self.fg)
suffixe(self.fd)
print(self.val)
def inserer(self,val):
if (self.estVide()):
return ArbreBinaire(val,None,None)
if(val < self.val):
self.fg = self.fg.inserer(val)
elif (val > self.val):
self.fd = self.fd.inserer(val)
if __name__ == "__main__":
a1 = ArbreBinaire(5,None,None)
print(a1.estVide())
a1.inserer(8)
a1.inserer(2)
a1.inserer(4)
a1.prefixe()
a1.suffixe()
a1.infixe()
l'IDLE python m'affiche ceci :
False
Traceback (most recent call last):
File "/home/kevin/Bureau/tests /arbrebinaire.py", line 51, in <module>
a1.inserer(8)
File "/home/kevin/Bureau/tests /arbrebinaire.py", line 46, in inserer
self.fd = self.fd.inserer(val)
AttributeError: 'NoneType' object has no attribute 'inserer'
Pouvez-vous me venir en aide ? 
Message édité le 08 juin 2016 à 19:29:33 par Porte-a-Porte