Add arbre
This commit is contained in:
parent
bd6ded20c5
commit
65141526cc
1 changed files with 71 additions and 0 deletions
71
algorithmique/arbres/arbre.algo
Normal file
71
algorithmique/arbres/arbre.algo
Normal file
|
@ -0,0 +1,71 @@
|
|||
Algorithme : Opérations de base sur des arbres n-aires
|
||||
|
||||
Début
|
||||
|
||||
Var T: arbre
|
||||
|
||||
Fonction EstVide(T: arbre): bool
|
||||
Si T = nil:
|
||||
Retourner Vrai
|
||||
Sinon
|
||||
Retourner Faux
|
||||
FinSi
|
||||
FinFonction
|
||||
|
||||
Fonction FilsGauche(T: arbre)
|
||||
Retourner T->gauche
|
||||
FinFonction
|
||||
|
||||
Fonction FilsDroit(T: arbre)
|
||||
Retourner T->droit
|
||||
FinFonction
|
||||
|
||||
Fonction RécupérerFilsGaucheDroit(T: arbre)
|
||||
Si EstVide(T):
|
||||
Retourner nil
|
||||
FinSi
|
||||
Retourner (FilsGauche(T), FilsDroit(T))
|
||||
FinFonction
|
||||
|
||||
Fonction EstFeuille(T: arbre, N: noeud): bool
|
||||
Si EstVide(T):
|
||||
Retourner Faux
|
||||
FinSi
|
||||
FinFonction
|
||||
|
||||
Fonction CalculerHauteurArbre(T: arbre): int
|
||||
Si EstVide(T):
|
||||
Retourner 0
|
||||
FinSi
|
||||
Si RécupérerFilsGaucheDroit(T) = nil:
|
||||
Retourner 1
|
||||
FinSi
|
||||
Retourner 1 + max(CalculerHauteurArbre(FilsGauche(T)), CalculerHauteurArbre(FilsDroit(T)))
|
||||
FinFonction
|
||||
|
||||
Fonction NombreNoeuds(T: arbre): int
|
||||
Si EstVide(T):
|
||||
Retourner 0
|
||||
FinSi
|
||||
Retourner 1 + NombreNoeuds(FilsGauche(T)) + NombreNoeuds(FilsDroit(T))
|
||||
FinFonction
|
||||
|
||||
Fonction NombreFeuilles(T: arbre): int
|
||||
Si EstVide(T):
|
||||
Retourner 0
|
||||
Sinon Si RécupérerFilsGaucheDroit(T) = nil
|
||||
Retourner 1
|
||||
FinSi
|
||||
Retourner NombreFeuilles(FilsGauche(T)) + NombreFeuilles(FilsDroit(T))
|
||||
FinFonction
|
||||
|
||||
Fonction NombreInterne(T: arbre): int
|
||||
Si EstVide(T):
|
||||
Retourner 0
|
||||
Sinon Si RécupérerFilsGaucheDroit(T) = nil
|
||||
Retourner 0
|
||||
FinSi
|
||||
Retourner 1 + NombreInterne(FilsGauche(T)) + NombreInterne(FilsDroit(T))
|
||||
FinFonction
|
||||
|
||||
Fin
|
Loading…
Reference in a new issue