Flashcards: Listes, piles, files et arbres — 91 cards

All cards

1Question

Qu'est-ce que l’adressage direct en programmation ?

Answer

Accéder au contenu d’une variable par son nom.

2Question

Qu'est-ce qu'un pointeur en C ?

Answer

Une variable qui contient l’adresse d’une autre variable et est typée.

3Question

Que fait l’opérateur & en langage C ?

Answer

Il récupère l’adresse d’une variable.

4Question

Que permet l’opérateur unaire * en C ?

Answer

D’accéder au contenu de la variable pointée.

5Question

Qu'est-ce que l’allocation dynamique ?

Answer

Réserver la mémoire pendant l’exécution quand la taille n’est pas connue à la compilation.

6Question

Que fait la fonction malloc en C ?

Answer

Elle réserve un bloc mémoire et renvoie son adresse ou NULL si insuffisant.

7Question

Quelle différence y a-t-il entre calloc et realloc ?

Answer

Calloc alloue et initialise à zéro, realloc ajuste la taille d’un bloc existant.

8Question

Que faut-il faire après une allocation dynamique en C ?

Answer

Tester le pointeur contre NULL puis libérer la mémoire avec free.

9Question

Quelle relation utilise la recherche ?

Answer

Une relation d’équivalence telle que l’égalité.

10Question

Quelle relation utilise le tri ?

Answer

Une relation d’ordre total telle que l’infériorité ou l’égalité.

11Question

Comment fonctionne la recherche séquentielle ?

Answer

Elle compare chaque élément avec l’objet recherché et s’arrête si trouvé ou fin.

12Question

Comment agit la recherche dichotomique sur une collection triée ?

Answer

Elle découpe autour d’un indice médian et cherche dans la moitié inférieure ou supérieure.

13Question

Que fait le tri par sélection dans la partie non triée ?

Answer

Il cherche le plus petit élément et le permute avec le premier de cette partie.

14Question

Comment fonctionne le tri à bulles ?

Answer

Il compare des cases contiguës et fait remonter les plus petits éléments vers le début.

15Question

Quelle est la complexité en temps du tri par sélection et du tri à bulles ?

Answer

Elle est de l’ordre de O(n²) dans le cas étudié.

16Question

Qu’est-ce que la récursivité ?

Answer

Le mécanisme par lequel une fonction s’appelle elle-même.

17Question

Qu'est-ce qu'un fichier en informatique ?

Answer

Un ensemble de données stockées sur une mémoire de masse persistante.

18Question

Quelle différence principale existe entre un fichier texte et un fichier binaire ?

Answer

Le fichier texte est à accès séquentiel, le fichier binaire permet l'accès direct.

19Question

Quel est l'ordre général pour manipuler un fichier ?

Answer

Ouverture, lecture ou écriture, puis fermeture.

20Question

Que fait la fonction fopen en cas d'échec d'ouverture ?

Answer

Elle renvoie NULL.

21Question

Quel mode d'ouverture permet la lecture seule d'un fichier existant ?

Answer

Le mode r.

22Question

Que fait la fonction fread ?

Answer

Elle lit des éléments binaires dans un tampon.

23Question

Que fait la fonction fwrite ?

Answer

Elle écrit des éléments binaires depuis un tampon.

24Question

Que fait la fonction fseek et que renvoie-t-elle en cas de succès ?

Answer

Elle déplace le descripteur et renvoie zéro en cas de réussite.

25Question

Quels éléments contient une liste simplement chaînée ?

Answer

Une tête, une queue et des maillons avec information et pointeur suivant.

26Question

Comment sont alloués les maillons d'une liste chaînée ?

Answer

Ils sont alloués dynamiquement et dispersés en mémoire.

27Question

Quelle différence d'accès existe entre tableaux et listes chaînées ?

Answer

Les tableaux offrent un accès direct, les listes un parcours séquentiel.

28Question

Que contient généralement une structure de liste ?

Answer

Un pointeur debut, un pointeur fin et un champ taille.

29Question

Que fait l'initialisation d'une liste simplement chaînée ?

Answer

Elle met debut et fin à NULL et taille à zéro.

30Question

Quelles étapes comprend l'insertion d'un maillon ?

Answer

Créer, allouer, remplir, mettre à jour pointeurs et incrémenter taille.

31Question

Comment se fait l'insertion en tête d'une liste ?

Answer

Créer maillon, affecter donnée, pointer suivant vers debut, actualiser debut et fin si vide, incrémenter taille.

32Question

Comment se déroule la suppression en tête d'une liste ?

Answer

Sauvegarder maillon, avancer debut, décrémenter taille, mettre fin à NULL si vide, récupérer donnée, libérer maillon.

33Question

Qu'est-ce qu'une liste doublement chaînée ?

Answer

Une liste où chaque maillon pointe vers son successeur et son prédécesseur.

34Question

Quels pointeurs contient une liste doublement chaînée ?

Answer

Elle contient les pointeurs debut et fin ainsi qu'un champ taille.

35Question

Que contient chaque maillon d'une liste doublement chaînée ?

Answer

Chaque maillon contient une donnée, un pointeur suivant et un pointeur precedent.

36Question

Que fait l'initialisation d'une liste doublement chaînée ?

Answer

Elle affecte NULL à debut et fin et zéro à taille après allocation.

37Question

Que met à jour une insertion dans une liste doublement chaînée ?

Answer

Les pointeurs suivant et precedent du nouveau maillon et des maillons voisins.

38Question

Que se passe-t-il lors de la suppression par position dans une liste doublement chaînée ?

Answer

Les voisins sont reliés, la donnée récupérée, la mémoire libérée et taille décrémentée.

39Question

Comment une liste doublement chaînée permet-elle un affichage direct et inverse ?

Answer

Grâce à ses deux pointeurs de liaison, debut vers fin et fin vers debut.

40Question

Qu'est-ce qu'une pile en informatique ?

Answer

Une pile est une structure linéaire dynamique de type LIFO.

41Question

Que fait l'empilement dans une pile ?

Answer

Il crée un maillon, place la donnée, le relie à l'ancien début, actualise début et incrémente taille.

42Question

Que se passe-t-il lors du dépilement d'une pile non vide ?

Answer

Le maillon début est retiré, début avancé, donnée récupérée, maillon libéré et taille décrémentée.

43Question

Qu'est-ce qu'une file en informatique ?

Answer

Une file est une structure linéaire de type FIFO avec insertion en queue et suppression en tête.

44Question

Que fait l'enfilement dans une file ?

Answer

Il crée un maillon, l'ajoute en fin, pointe début si vide, puis incrémente taille.

45Question

Que fait le défilement dans une file ?

Answer

Il retire le maillon début, avance début, récupère la donnée, libère le maillon, décrémente taille et met fin à NULL si vide.

46Question

Comment reconnaît-on un mot bien parenthésé avec une pile ?

Answer

On empile chaque parenthèse ouvrante et dépile la correspondante à chaque fermante.

47Question

Quand accepte-t-on un mot bien parenthésé en utilisant une pile ?

Answer

Si la pile n’est jamais vide lors d’une fermeture et est vide à la fin.

48Question

Où place-t-on les opérateurs en notation infixée ?

Answer

Entre leurs opérandes.

49Question

Où place-t-on l’opérateur en notation préfixée ?

Answer

Avant ses opérandes.

50Question

Où place-t-on l’opérateur en notation postfixée ?

Answer

Après ses opérandes.

51Question

Comment fonctionne l’évaluation d’une expression postfixée ?

Answer

On empile les valeurs, dépile les opérandes pour chaque opérateur, applique l’opération, puis empile le résultat.

52Question

Quelle est la valeur finale de l’expression postfixée 6 5 2 3 + 8 * + 3 + * ?

Answer

288.

53Question

Comment convertit-on une expression infixe en postfixée ?

Answer

On envoie les opérandes en sortie, empile les opérateurs selon leur précédence, et dépile ceux de précédence supérieure ou égale avant d’empiler le courant.

54Question

Qu'est-ce qu'un arbre binaire ?

Answer

Une structure dynamique non linéaire avec au maximum deux fils par nœud.

55Question

Quelle caractéristique distingue la racine dans un arbre ?

Answer

Elle n'a pas de père.

56Question

Qu'est-ce qui caractérise une feuille dans un arbre ?

Answer

Elle n'a pas de fils.

57Question

Que contient un nœud d'arbre binaire ?

Answer

Une information et deux pointeurs vers ses sous-arbres gauche et droit.

58Question

Comment se calcule la hauteur d'un arbre binaire non vide ?

Answer

1 plus le maximum des hauteurs de ses sous-arbres gauche et droit.

59Question

Comment se calcule le nombre de nœuds d'un arbre binaire non vide ?

Answer

1 plus la somme des nombres de nœuds de ses deux sous-arbres.

60Question

Quelle est la différence principale entre un parcours en profondeur et un parcours en largeur ?

Answer

La profondeur explore une branche entièrement avant la suivante, la largeur visite niveau par niveau.

61Question

Quelle est la valeur du nombre de nœuds d’un arbre vide ?

Answer

Le nombre de nœuds d’un arbre vide vaut 0.

62Question

Comment calcule-t-on le nombre de nœuds d’un arbre non vide ?

Answer

Il vaut 1 plus la somme des nombres de nœuds de ses sous-arbres gauche et droit.

63Question

Quelle est la valeur du nombre de feuilles d’un arbre vide ?

Answer

Le nombre de feuilles d’un arbre vide vaut 0.

64Question

Combien de feuilles a un arbre dont la racine est une feuille ?

Answer

Il a 1 feuille.

65Question

Comment calcule-t-on le nombre de feuilles d’un arbre non-feuille ?

Answer

Il est égal à la somme des nombres de feuilles de ses deux sous-arbres.

66Question

Quelle est la valeur du nombre de nœuds internes d’un arbre vide ?

Answer

Le nombre de nœuds internes d’un arbre vide vaut 0.

67Question

Quelle est la valeur du nombre de nœuds internes d’un arbre réduit à une feuille ?

Answer

Le nombre de nœuds internes d’un arbre réduit à une feuille vaut 0.

68Question

Comment calcule-t-on le nombre de nœuds internes d’un arbre non réduit à une feuille ?

Answer

Il vaut 1 plus la somme des nombres de nœuds internes de ses sous-arbres.

69Question

Dans un parcours préfixe RGD, quel est l'ordre de traitement des nœuds ?

Answer

On traite la racine avant le fils gauche puis le fils droit.

70Question

Quel ordre suit un parcours infixe GRD dans un arbre binaire ?

Answer

On traite le fils gauche, puis la racine, puis le fils droit.

71Question

Que fournit un parcours infixe appliqué à un arbre binaire de recherche ?

Answer

Il fournit les valeurs dans l’ordre croissant.

72Question

Dans un parcours postfixe GDR, quel est l'ordre de traitement des nœuds ?

Answer

On traite le fils gauche, puis le fils droit, puis la racine.

73Question

Comment la fonction DFS traite-t-elle la racine dans un parcours préfixe ?

Answer

Le traitement de la racine est placé avant l’appel gauche.

74Question

Où place-t-on le traitement de la racine dans un parcours infixe DFS ?

Answer

Entre les appels gauche et droit.

75Question

Quand traite-t-on la racine dans un parcours postfixe DFS ?

Answer

Après l’appel droit.

76Question

Comment est représenté un arbre vide ?

Answer

Par le pointeur NULL.

77Question

Que fait la création d’un arbre à partir d’un élément et deux sous-arbres ?

Answer

Elle alloue un nœud, lui attribue la valeur, place les sous-arbres en fils gauche et droit, puis renvoie un pointeur vers ce nœud.

78Question

Que cherche l’insertion simple dans un arbre ?

Answer

Un fils vide récursivement.

79Question

Que fait l’insertion simple si l’arbre est vide ?

Answer

Elle crée un arbre.

80Question

Que fait l’insertion simple si un fils est vide ?

Answer

Elle y insère le nouvel élément.

81Question

Quelle est la règle des valeurs dans un arbre binaire de recherche d’entiers ?

Answer

Les valeurs du sous-arbre gauche sont inférieures à la racine, celles du sous-arbre droit sont supérieures ou égales.

82Question

Où sont insérées les valeurs égales dans un arbre binaire de recherche ?

Answer

À droite.

83Question

Comment insère-t-on une valeur dans un arbre binaire de recherche vide ?

Answer

On crée un nœud.

84Question

Quelle différence de recherche existe entre un arbre quelconque et un arbre binaire de recherche ?

Answer

Dans un arbre binaire de recherche, la recherche suit une seule branche grâce à l’ordre des valeurs.

85Question

Que renvoie la recherche dans un arbre quelconque si l’arbre est vide ?

Answer

Elle renvoie 0.

86Question

Que renvoie la recherche dans un arbre quelconque si la racine contient la valeur cherchée ?

Answer

Elle renvoie 1.

87Question

Comment la recherche se poursuit-elle dans un arbre quelconque si la racine ne contient pas la valeur ?

Answer

Elle explore logiquement les sous-arbres gauche et droit.

88Question

Dans un arbre binaire de recherche, quel sous-arbre est exploré si la valeur cherchée est plus petite que la racine ?

Answer

Le sous-arbre gauche est exploré.

89Question

Quelle est la méthode de suppression complète d’un arbre ?

Answer

Supprimer récursivement le sous-arbre gauche, puis droit, puis la racine.

90Question

À quel type de parcours correspond la suppression complète d’un arbre ?

Answer

Elle correspond à un parcours postfixe.

91Question

Pourquoi la suppression d’un nœud est-elle limitée à une feuille dans ce cours ?

Answer

Parce que supprimer un nœud avec des fils impose de réorganiser ou supprimer ses sous-arbres.

Test yourself with the quiz

Test your knowledge with 46 questions on Listes, piles, files et arbres.

1. Quel type d’adressage permet d’accéder au contenu d’une variable en utilisant le nom de cette variable ?

2. Dans un programme C, qu’est-ce qu’un pointeur contient précisément ?

Take the quiz →

Read the revision sheet

Review the complete course in the revision sheet for Listes, piles, files et arbres.

See revision sheet →

Similar courses

Create your own flashcards

Import your course and AI generates flashcards in 30 seconds.

Flashcard generator