Final Flashcards
Quel est le type d’adressage qui utilise EMPTY, DELETED et ACTIVE?
Adressage ouvert
Description état EMPTY?
Indique que cette entrée est vide et n’a jamais contenu une clé.
Description état ACTIVE
Indique que cette entrée contient une clé valide.
Description état EMPTY
Indique que cette entrée est vide et n’a jamais contenu une clé.
Pour l’adressage ouvert, les opérations d’insertion, suppression et insertions utilise la fonction TrouverPosition(x) qui effectue une séquence de sondages de la table de dispersion et s’arrête sur la première entrée de cette séquence satisfaisant une propriété. De quelle propriété s’agit-il?
TrouverPosition(x) s’arrête sur la première case dans l’état EMPTY ou une case contenant la clé x qui est dans l’état DELETED ou ACTIVE.
Comment cette séquence de sondages est-elle effectuée pour le sondage quadratique?
La séquence de cases sondées est h0(x), h1(x), h2(x), … avec hi(x) = (h(x) + i2) mod N pour une
fonction de hachage h et une table de dispersion avec N indexes.
Lorsque TrouverPosition(x) est arrêté sur une entrée de
la table, quelle est la valeur booléenne retournée par Trouver(x) et comment le champ état est-il modifié en fonction de l’état initial de cette entrée et de la clé x?
Soit hi(x), la case où TrouverPosition(x) s’est arrêté.
Pour Trouver(x) : on retourne vrai si hi(x) est ACTIVE et contient x. Si non (dans ce cas hi(x) est dans l’état EMPTY ou DELETED), on retourne faux. Dans tous les cas le champ état n’est pas
modifié. (3 points)
Lorsque TrouverPosition(x) est arrêté sur une entrée de
la table, quelle est la valeur booléenne retournée par Supprimer(x) et comment le champ état est-il modifié en fonction de l’état initial de cette entrée et de la clé x?
on retourne faux si hi(x) est dans l’état EMPTY ou DELETED et le champ état n’est pas modifié. Si non (dans ce cas hi(x) est dans l’état ACTIVE et contient x), on
retourne vrai et on change l’état à DELETED.
En vous servant du fait que dans un tas que tous les niveaux sont pleins, sauf possiblement le dernier, démontrez qu’un tas de n nœuds possède une hauteur h ≤ log2(n).
Considérez un tas de n nœuds possédant L nœuds au dernier niveau (le niveau h).
Nous avons alors:
* n = 20 + 21 + … 2h-1 + L avec: 1 ≤ L ≤ 2h
* Alors: n = 2h – 1 + L
Alors:
* L ≥ 1 ⇒ n ≥ 2h ⇒ h ≤ log2(n)
En vous servant du fait que dans un tas que tous les niveaux sont pleins, sauf possiblement le dernier, démontrez qu’un tas de n nœuds possède une hauteur h ≥ log2(n+1) - 1.
Considérez un tas de n nœuds possédant L nœuds au dernier niveau (le niveau h).
Nous avons alors:
* n = 20 + 21 + … 2h-1 + L avec: 1 ≤ L ≤ 2h
* Alors: n = 2h – 1 + L
Alors:
* L ≤ 2h ⇒ n ≤ 2h+1 – 1 ⇒ h ≥ log2(n+1) – 1.
Enlever racine : [8, 8, 7, 6, 6]
[8, 6, 7, 6]
Enlever racine : [9, 8, 9, 8, 7, 6]
[9, 8, 6, 8, 7]
Enlever racine : [8, 7, 6, 6, 5, 5, 4]
[7, 6, 6, 4, 5, 5]
Enlever racine : [8, 7, 6, 5, 4, 3, 2]
[7, 5, 6, 2, 4, 3]
On ajoute 7 à [8, 7, 6, 5, 4]
Réponse : [8, 7, 7, 5, 4, 6]