Académique Documents
Professionnel Documents
Culture Documents
Examen d’Algorithmique
Algorithmique et de Structures de Données 2
Durée 1.5 H
Documents Interdits
Exercice 1 (0.5
0.5 + 0.75 + 0.75 + 1 = 3 points) : Arbre m-aire
aire
1. Sachant que le parcours en largeur de l’arbre donne : 40, 35, 26, 15, 19, 17, 20, 1, 13, 14, 12, 11, 8
a. Donner la représentation graphique de cet arbre.
b. Préciser son type.
c. Supprimer la racine de l’arbre obtenu en détaillant les étapes nécessaires.
2. Ecrire la fonction MoyenneTAS (TS :TAS) : réel qui permet de calculer la moyenne des valeurs
contenues dans TS. Dans le cas où l’arbre est vide, la fonction retourne 0 ;
3. Ecrire la procédure SupprimerRacineTAS (Var TS : TAS) qui permet de supprimer la racine de
l’arbre TS. Pour cette procédure, vous pouvez utiliser directement la procédure Permuter (Var
TS : TAS, int i, int j) qui permet de permuter la valeur des deux nœuds i et j.
4. Ecrire la procédure Afficher_Valeurs_Triées (TS : TAS) qui permet d’afficher la liste triée (ordre
décroissant) des valeurs contenus dans l’arbre TS. Pour cette procédure, vous pouvez utiliser la
procédure de la question 3.
Exercice 3 (1.5
1.5 + 1.5 + 2 + 3 = 8 points) : Arbre AVL
Soit R un arbre AVL défini par la structure de données et le modèle suivants:
suivant
Structure de données Modèle
TYPE TnoeudAVL = STRUCTURE Fonction Info (R :* TnoeudAVL) : entier
Info : entier Fonction FG (R :* TnoeudAVL) : *TnoeudAVL
Bal : entier
Fonction FD (R :* TnoeudAVL) : *TnoeudAVL
FG : * TnoeudAVL
FD : * TnoeudAVL Fonction Bal (R :* TnoeudAVL) : entier
FIN Procédure Aff_info (Var R :* TnoeudAVL, x :entier)
VAR R : * TnoeudAVL
Procédure Aff_FG (Var R :* TnoeudAVL, P :* TnoeudAVL)
Procédure Aff_FG (Var R :* TnoeudAVL, P :* TnoeudAVL)
Procédure Aff_Bal (Var R :* TnoeudAVL, x :entier)
Procédure CréerNoeudAVL(Var R : *TnoeudAVL, x :entier)
Procedure LibérerNoeudAVL (Var R :*TnoeudAVL)
3. La procédure itérative InsererAVL (Var R :TnoeudAVL, x : entier) qui permet d’insérer la valeur
va
« x » dans l’arbre « R » et de le garder équilibrer.
4. La procédure itérative SupprimerAVL (Var R :TnoeudAVL, x : entier) qui permet de supprimer
la valeur « x » de l’arbre « R » et de le garder équilibrer.
Bon Courage