L3 - Introduction à l’algorithmique (Année 2012/2013) V .Chau/D. Letsios
TD6 - Arbre binaire de recherche et algorithme glouton
Exercice 1. Arbre binaire de recherche
1. Insérez les clés suivantes dans un arbre binaire de recherche initialement vide :
24,13,36,48,60,42,30,26,6,15,18
2. Donnez le comportement d’un algorithme qui supprime une clé d’un arbre binaire de
recherche.
3. Retirez les clés suivantes de l’arbre binaire de recherche de la question 1:
60,24,42
Exercice 2. ordonnancement
Ordonnancez les tâches suivantes pour maximisez le nombre de tâches effectuées :
[6,10],[2,4],[3,5],[7,9],[10,14],[0,4],[8,10],[13,15],[5,8]
Exercice 3. Permanence
Une association cherche à assurer une permanence de ses locaux durant 24h, pour cela plu-
sieurs bénévoles sont volontaires. Chaque bénévole a fourni à l’association les horaires durant
lesquels il peut être présent.
.Trouver un algorithme qui minimise le nombre de volontaires pour assurer la perma-
nence.
Exercice 4. Stockage de données
Nous disposons d’une mémoire de taille Let d’un groupe de fichiers P= (P1, . . . , Pn). Chaque
fichier nécessite une place aipour être stocké en mémoire. Nous supposons que Pai> L :
nous ne pouvons donc pas sauvegarder tous les fichiers. Il va falloir se contenter d’un sous-
ensemble Qde fichiers.
Dans un premier temps, nous souhaitons que Qcontienne le plus grand nombre possible de
fichiers. Pour cela nous proposons d’utiliser l’algorithme glouton qui trie les fichiers par taille
croissante.
1. Supposons que la liste de fichier soit ordonnée par taille croissante (a1≤. . . ≤an).
Écrivez un algorithme en pseudo code pour la stratégie présentée ci-dessus. Vous renverrez
un tableau booléen Stel que S[i] = 1 si Piest dans Qet S[i] = 0 si Pin’est pas dans Q. Quelle
est la complexité de cet algorithme en nombre de comparaison et en nombre d’opération
arithmétique ?
2. Montrer que cette stratégie renvoie toujours un sous-ensemble Qoptimal tel que
X
Pi∈Q
≤L.
1