Arbres Binaires
Arbres Binaires
Arbres Binaires
Arbres binaires
CHAPITRE :
I- Introduction : 2
Une expression arithmétique peut être représentée sous forme d'un arbre
syntaxique.
Soit l'expression:
(y/2−t)×(75 +z)
3
Exemple :
Soit l'expression suivante :
x-((y+1)*(Z/3))
x *
+ /
Y 1 Z 3
II- Définition 1: 5
binaire
En Python, les arbres binaires peuvent être représentés par
plusieurs moyens.
Dans la suite de ce cours nous allons représenter ces arbres par
une liste de listes.
['A',
]
Exemple 2: 9
[ 'A',
]
IV- Arbre binaire : 11
def parcoursEnProfondeur(arbre):
n=len(arbre)
sommet = arbre[0]
print(sommet)
for i in range(1,n):
if arbre[i]!=[] :
parcoursEnProfondeur(arbre[i])
Parcourir en largeur d'un arbre n-aire: 13
def parcoursEnLargeur(arbre):
fifo = [arbre]
while fifo:
arbre_courant = fifo.pop(0)
n= len(arbre_courant)
sommet_courant = arbre_courant[0]
print(sommet_courant)
for i in range(1,n):
if arbre_courant[i] !=[] :
fifo.append(arbre_courant[i])
Parcourt préfixe :(arbre binaire) 14
def prefixe(arbre) :
if arbre!=[] :
print(arbre[0])
prefixe(arbre[1])
prefixe(arbre[2])
Parcourt infixe :(arbre binaire) 15
def infixe(arbre) :
if arbre!=[] :
infixe(arbre[1])
print(arbre[0])
infixe(arbre[2])
Parcourt postfixe : (arbre binaire) 16
def postfixe(arbre) :
if arbre!=[] :
postfixe(arbre[1])
postfixe(arbre[2])
print(arbre[0])
Tri par tas : (Tri Maximier) 17