1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| class Noeud:
def __init__( self,rac = None ):
self.rac = rac
self.fg = None
self.fd = None
def insere (self,e):
if self.rac != None :
if ( self.rac >= e ) :
if self.fg :
self.fg.insere( e )
else:
self.fg = Noeud( e )
else:
if self.fd :
self.fd.insere( e )
else:
self.fd = Noeud( e )
else:
self.rac = e
def trace (self,prof=0):
if self.rac :
print ' '*prof*3,self.rac
if self.fg :
self.fg.trace( prof+1 )
else:
print ' '*(prof+1)*3,'*'
if self.fd :
self.fd.trace( prof+1 )
else:
print ' '*(prof+1)*3,'*'
a = Noeud()
for i in ( 45,25,60,15,35,55,65,10,20,30,40,50 ):
a.insere( i )
a.trace() |
Partager