• Aucun résultat trouvé

Algo Design

N/A
N/A
Protected

Academic year: 2022

Partager "Algo Design"

Copied!
28
0
0

Texte intégral

(1)

Algo Design

Cours 5-2

Tas

(2)

Recherche en table

• Problème : Trouver une information associée à une « clé »

• Exemple : Annuaire, Bibliothèque, …

Fonctions :

– recherche, – insertion,

– suppression.

• Quelle structure de données utiliser ?

(3)

Solutions

Table à adressage direct

– stockage en Θ(m) – opérations en Θ(1)

Recherche séquentielle

– stockage en Θ(n) – opérations en Θ(n)

Recherche dichotomique

(4)

Arbre binaire de recherche

• Structure d’arbre binaire

• Chaque nœud contient une clé

• Toute clé d’un nœud de l’arbre est

– supérieure à celles des descendants de son fils gauche

– inférieure à celles des descendants de

son fils droit

(5)

Exemple d’ABR

15 11

3 7

6

10

(6)

Complexité des ABR

• stockage en Θ(n)

• recherche en Θ(log(n))

• insertion en Θ(log(n))

• suppression en Θ(log(n))

Solution au problème de la recherche en table

• Dans le pire cas, les complexités sont

(7)

ABRs contenant 1,2,…7

7 6

3 1

2

4

1

7

6

5

4

3

(8)

File de priorité

• Problème :

quelle structure de donnée utiliser afin de réaliser efficacement

– une fonction d’insertion d’un nouvel élément – une fonction qui retourne l’élément de plus

haut rang

– une fonction qui supprime l’élément de plus haut rang

• Application : gestion d’évènements

(9)

Structure de tas (heap)

• Arbre binaire complet – hauteur minimale

– dernier niveau « tassé » à gauche

La clé de tout nœud est supérieure ou

égale à celles de ses descendants

(10)

Exemple de tas

16

10 14

1 4

2

3 9

7

8

(11)

Insertion de 15

16

10 14

3 9

7

8

(12)

Insertion de 15

16

10 14

1 4

2

3 9

7

8 15

(13)

Insertion de 15

16

10

14 9 3

8

15

OK

(14)

Insertion de 15

16

10

14

1 4

2

3 9

7 8

15

(15)

Suppression racine

16

10 14

3 9

7

8

(16)

Suppression racine

1

10 14

4 2

3 9

7

8

(17)

Suppression racine

1

10 14

3 9

7

8

(18)

Suppression racine

1

10 14

4 2

3 9

7

8

(19)

Suppression racine

1 10

14

3 9

7

8

(20)

Suppression racine

1 10

14

4 2

3 9

7

8

(21)

Suppression racine

1

10 14

3 9

7

8

(22)

Suppression racine

1

10 14

4 2

3 9

7

8

(23)

Suppression racine

10 14

4 7 9 3

8

(24)

Complexité des tas

• Maximum Θ(1)

• Insertion

Θ(log(n))

• Suppression Θ(log(n))

• Excellente solution car complexité bonne

et valable dans le cas le pire

(25)

Implémentation des tas

• On utilise un simple tableau

• le fils gauche du nœud d’indice i se trouve dans la case d’indice 2.i

• le fils droit du nœud d’indice i se trouve dans la case d’indice 2.i+1

• le père du nœud d’indice i se trouve dans

(26)

Implémentation des tas

16

10 14

1 4

2

3 9

7 8

16 14 10 8

7

2 4 1

9 3

16 14 10 8 7 9 3 2 4 1

(27)

Implémentation des tas

16

10 14

1 4

2

3 9

8 7

2 4

8

1 2 3 4 5 6 7 8 9 10

(28)

Tri par tas (heapsort)

• Insérer les n éléments dans un tas O(log(n)) x n

• répéter n fois

– rechercher le maximum Θ(1) x n

– supprimer le maximum O(log(n)) x n

Nouvel algorithme de tri en O(n.log(n)) même dans le pire cas

• Implémentation TP semaine prochaine

Références

Documents relatifs

Aucune des parties MSCI n'emet quelconque affirmation ou garantie, explicite ou implicite, à l'émetteur ou aux propriétaires de ce fonds ou à toute autre personne ou

En effet, même si un point objet donne plusieurs points images dans le plan de la pellicule, on peut avoir une image nette dans le cas ou tous les points images impressionnent le

Image : Point d’intersection des rayons issus du système optique et provenant d’un objet. Réel ou virtuel : Un objet (une image) est réel(le) si les rayons qui entrent (sortent)

Dans ce problème, on considère deux récipients : l'un de forme conique, de rayon de base 8 cm et de hauteur 24 cm, l'autre de forme cylindrique, de rayon 8 cm également.. Le but

´ elev´ es, leur ajoutent des am´ eliorations, et l’introduction d’un « effet qualit´ e » abaissant leurs prix ` a l’ann´ ee cible accroˆıt la diminution de prix,

Lerman entre attributs, un indice de comparaison entre parties d’un même ensemble.. Pour cette raison, nous commencerons par reprendre de façon précise et

De quelle histoire célèbre parle John Chatterton ...?. Voici quelques indices pour t'aider

Faire le travail à l'aide du document "évolution visiteurs" ; s'il vous reste du temps, vous pourrez recommencer le même type de travail avec le document