TD6 - Arbre binaire de recherche et algorithme glouton

publicité
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 plusieurs 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 permanence.
Exercice 4.
Stockage de données
Nous disposons d’une mémoire de taille L et d’un groupe de fichiers P = (P1 , . . . , PP
n ). Chaque
fichier nécessite une place ai pour être stocké en mémoire. Nous supposons que
ai > L :
nous ne pouvons donc pas sauvegarder tous les fichiers. Il va falloir se contenter d’un sousensemble Q de fichiers.
Dans un premier temps, nous souhaitons que Q contienne 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 S tel que S[i] = 1 si Pi est dans Q et S[i] = 0 si Pi n’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 Q optimal tel que
X
≤ L.
Pi ∈Q
1
P
3. Soit Q le sous-ensemble obtenu. À quel point le quotient d’utilisation
petit ?
Pi ∈Q
L
ai
peut-il être
Maintenant nous souhaitons sélectionner le sous-ensemble Q de P qui maximise le quotient
d’utilisation, i. e. celui qui remplit le plus le disque. Cette fois-ci nous allons utiliser l’approche
gloutonne qui considère les fichiers par taille décroissante.
4. Montrer que cette stratégie n’est pas optimale. À quel point le quotient d’utilisation peutil être petit ? Prouvez-le.
2
Téléchargement