• Aucun résultat trouvé

Rotations Simples 1.

N/A
N/A
Protected

Academic year: 2022

Partager "Rotations Simples 1."

Copied!
3
0
0

Texte intégral

(1)

1

Rotations Simples

1. /* rotation droite * / arbre * RD(arbre *a) {

arbre *tmp ; tmp = gauche(a) ; a->g = droit(tmp) ; tmp ->d = a ;

return tmp ; }

2. /* rotation gauche * /

La fonction rotation gauche RG peut être obtenue en remplaçant dans la fonction RD g par d et d par g.

arbre * RD(arbre *a) { arbre *tmp ;

tmp = droit(a) ; a->d = gauche(tmp) ; tmp ->g = a ;

return tmp ; }

(2)

2

Rotations Doubles

3. Rotation-Gauche-Droit : RGD

arbre * RGD(arbre *a) { a->g = RG( gauche(a)) ; return RD (a);

}

4. Rotation-Droit-Gauche : RDG

arbre * RDG(arbre *a) { a->d = RD( droit(a)) ; return RG (a);

}

(3)

3

Arbres AVL

Les arbres AVL (Adelson-Velskii et Landis : AVL) La 1ere classe des arbres équilibrés introduite en 1962 Un arbre AVL vérifie la propriété fondamentale suivante:

Pour tout nœud, la différence entre les hauteurs des fils gauche et des fils droit ne peut excéder 1.

Soit Fact la fonction de déséquilibre sur les abr définies par :

. Fact(arbre_vide) = 0

. Fact(R, G,D) = Hauteur(G) – Hauteur(D)

Alors un arbre A est H-équilibré si pout tout s/a S de A on a : Fact(S) € {-1,0,+1 }

Rééquilibrage

Fact (A) = 0 (ou 1 ou -1)  Rééquilibrage(A) = A

Fact (A) = +2 et Fact (g(A)) = +1  Rééquilibrage(A) = RD(A) Fact (A) = -2 et Fact (d(A)) = -1  Rééquilibrage(A) = RG(A) Fact (A) = +2 et Fact (g(A)) = -1  Rééquilibrage(A) = RGD(A) Fact (A) = -2 et Fact (d(A)) = +1  Rééquilibrage(A) = RDG(A)

Références

Documents relatifs

La première partie de l'algorithme consiste à insérer la clé dans l'arbre sans tenir compte du facteur d'équilibrage Elle garde aussi la trace du plus jeune antécédent, soit Y

Chercher sur Internet l‘algorithme DSW (c’est un algorithme qui prend en entrée un arbre de recherche binaire afin de réaliser son équilibrage) et l’algorithme de

Les AVL sont d’abord des arbres de recherche, ils sont donc tels que tout nœud a une clé supérieure à celles des nœuds de son sous arbre gauche et inférieure à celles des nœuds

• on peut rendre plus flexible la loi d’équilibre des arbres AVL. •

Les AVL sont d’abord des arbres de recherche, ils sont donc tels que tout nœud a une clé supérieure à celles des nœuds de son sous arbre gauche et inférieure à celles des nœuds

Dans un arbre binaire de recherche, en général, est-ce qu'il est plus coûteux de trouver l’enfant d'un noeud ou de faire une rotation autour d'un

L'insertion d'un élément peut produire un nœud ayant plus de b fils.. Amphi

On peut modifier la visibilité des variables et des méthodes. Modificateur Visibilité private