Structures de données partie 1 Flashcards

1
Q

quelles sont les opérations générales pour la Structures de données (7)

A
  • initialisation;
  • recherche par adresse;
  • recherche par contenu;
  • insertion;
  • échange;
  • suppression;
  • tri (ou liste), ordonné par contenu.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

quelles sont les opérations spécifiques pour la Structures de données (7)

A
  • premier ou dernier élément;
  • élément précédent ou suivant;
  • etc.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Définir les piles et ses deux opérations spécifiques

A

Liste linéaire particulière qui ne peut accéder qu’au dernier élément
inséré.
– Push: insérer un nouvel élément au sommet de la pile;
– Pop: retirer l’élément inséré en dernier du sommet de la pile.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Comment peut s’implémenté des piles?

A

– tableaux plus une variable auxiliaire SP ;
• indice de l’élément inséré en dernier ;
– listes chaînées (tête = élément inséré en dernier)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Avantages et desavantages de l’Implémentation d’une pile par un tableau?

A

Désavantage: limité par la taille.
–Avantage: accès direct à un élément au sommet (par la
variable sp)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Quels sont les avantages desavantages et la caractéristique de l’Implémentation d’une pile par une liste chaînée?

A

– Lien vers le sommet. Ce lien change à chaque
ajout = dernier élément inséré.
– Avantage: Espace utilisé au besoin.
– Désavantage: Le système doit allouer et
désallouer la mémoire.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Définir les files et ses deux opérations spécifiques?

A

Liste linéaire particulière qui ne peut ajouter qu’en queue et
consulter et supprimer qu’en tête.
Deux opérations spécifiques:
– Enqueue: insérer un nouvel élément à la fin de la file;
– Dequeue: retirer le premier élément de la file (donc
celui qui a été inséré en premier).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Critères de Implémentation d’une file par une liste chaînée?

A

– Deux pointeurs
• Lien vers le sommet = élément inséré en 1er
• plus lien vers la queue (élément inséré en dernier).
– Ces liens changent à chaque opération
– Plus simple que pour une réalisation avec un tableau.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Compare file, pile et Queue de priorité!

A

Pile :Dernier entré, premier sorti
File: Premier entré, premier sorti
Queue de priorité :Le « meilleur » en premier sorti

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Racine

A

Le seul nœud qui n’a pas de parent

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Enfant

A

Un nœud directement connecté à un autre nœud lorsqu’on

s’éloigne de la racine

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Frères

A

Un ensemble de nœuds ayant le même parent

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Descendant

A

Un nœud atteignable par une suite d’accès parent-enfant

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Ancêtre

A

Un nœud atteignable par une suite d’accès enfant-parent

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Feuille

A

Un nœud sans enfant

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Branche

A

Connexion entre deux nœuds

17
Q

Chemin

A

Une séquence de branches qui connectent un nœud à un

descendant

18
Q

Hauteur d’un nœud

A

Le nombre de branches dans le chemin le plus long entre le

nœud et une feuille

19
Q

Hauteur de l’arbre

A

Hauteur du nœud racine

20
Q

Profondeur d’un nœud

A

Le nombre de branches entre le nœud et la racine

21
Q

Niveau

A

Le niveau d’un nœud est défini comme 1+ la profondeur du

noeud

22
Q

Quelles sont les propriétés du « Max-Heap »

A

Propriétés:
• Arbre binaire presque complet.
• La valeur d’un nœud est supérieure à la valeur de tous ses nœuds
enfants.
• Les nœuds sont sauvegardés dans un tableau.

23
Q

Combien y a-t-il d’opérateur et decrit les!

A

5
Insert() Insert un nouvel élément dans la queue
Max() Retourne le meilleur élément
DeleteMax() Enlève le meilleur élément de la queue
Update() Met à jour une valeur (suppose que la nouvelle
valeur a une priorité plus élevée)
Size() Nombre d’éléments dans la queue

24
Q

Qu’est que la racine de l’arbre

A

L’élément avec la plus grande priorité

25
Q

Quel est le principe de l’extraction de la racine?

A

– Place le dernier élément du « heap » à la racine.
– Rétablir la propriété du « heap ».
avec downheap
– Utilise DownHeap() pour rétablir la propriété du « heap ».

26
Q

décrit Fonction DownHeap

A

DownHeap(H,i)

  1. g = Gauche(i)
  2. d = Droite(i)
  3. si g ≤ size[H] et H[g] > H[i]
  4. plusGrand = g
  5. sinon
  6. plusGrand = i
  7. si d ≤ size[H] et H[d] > H[plusGrand]
  8. plusGrand = d
  9. si plusGrand ≠ i
  10. H[i] ↔ H[plusGrand]
  11. DownHeap(H,plusGrand)
27
Q

Principe de l’insertion et son analyse asymptotique

A
Principe:
– Ajoute l’élément à la fin du tableau
– Déplace l’élément vers la racine de façon à maintenir la propriété du
« heap ».
Analyse Asymptotique:
• Même principe que l’extraction
• O(lg N)
28
Q

Comment faire pour trier un tableau de n éléments?La première étape consiste à créer un « heap » à partir du tableau
Quel est le principe du heap?

A

Visite chacun des éléments du heap en commençant
par les feuilles et on applique la fonction DownHeap()

dia 29 a 32

29
Q

fonction BuildHeap, Pourquoi la fonction se comporte de manière linéaire?

A
  • L’opération de base de la fonction est l’échange des valeurs
  • Dans le pire cas, combien d’échanges sont effectués par nœuds?
  • Dans l’analyse précédente, on suppose que tous les nœuds sont déplacés log n fois
  • Est-ce vraiment le cas?
30
Q

Principe de HeapSort et ses étapes

A

Le heap est déjà partiellement ordonné, nous allons donc utiliser cette propriété.

Étape 1: Échanger la racine avec le dernier élément du tableau
Étape 2: Réduire la taille du heap de 1
Étape 3: Appliquer la fonction DownHeap() sur la racine
Répéter jusqu’à ce que le heap soit vide

ex dia 37 a 46

31
Q

But, l’optimisation et l’utilité de introsort

A

But:
Être aussi rapide que le tri rapide en pratique mais
être en Θ “ log “ .

Optimisation du tri rapide:
• Applique le tri rapide normal
• Utilise le heapsort si la hauteur de la récursion
dépasse 2 log(n)
• Utilise le tri par insertion pour n=16

Utilisation:
• C++ STL
• MS .NET Framework

32
Q

Considérez un max-heap contenant n nombres.
Étant donné un nombre k et un nombre x, écrire un
algorithme qui détermine si la kième plus grande clé
du heap est plus grand que x.
L’algorithme doit-être en O(k) et peut utiliser O(k)
d’espace mémoire.
2

A

Sais-tu la réponse pck pas moi!!!