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

Toutes les cartes

1Question

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

Réponse

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

2Question

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

Réponse

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

3Question

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

Réponse

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

4Question

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

Réponse

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

5Question

Qu'est-ce que l’allocation dynamique ?

Réponse

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 ?

Réponse

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 ?

Réponse

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 ?

Réponse

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

9Question

Quelle relation utilise la recherche ?

Réponse

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

10Question

Quelle relation utilise le tri ?

Réponse

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

11Question

Comment fonctionne la recherche séquentielle ?

Réponse

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 ?

Réponse

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 ?

Réponse

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

14Question

Comment fonctionne le tri à bulles ?

Réponse

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 ?

Réponse

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

16Question

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

Réponse

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

17Question

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

Réponse

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 ?

Réponse

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 ?

Réponse

Ouverture, lecture ou écriture, puis fermeture.

20Question

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

Réponse

Elle renvoie NULL.

21Question

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

Réponse

Le mode r.

22Question

Que fait la fonction fread ?

Réponse

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

23Question

Que fait la fonction fwrite ?

Réponse

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 ?

Réponse

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 ?

Réponse

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 ?

Réponse

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 ?

Réponse

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

28Question

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

Réponse

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

29Question

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

Réponse

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

30Question

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

Réponse

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

31Question

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

Réponse

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 ?

Réponse

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 ?

Réponse

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

34Question

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

Réponse

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

35Question

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

Réponse

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 ?

Réponse

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 ?

Réponse

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 ?

Réponse

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 ?

Réponse

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

40Question

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

Réponse

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

41Question

Que fait l'empilement dans une pile ?

Réponse

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 ?

Réponse

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 ?

Réponse

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 ?

Réponse

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 ?

Réponse

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 ?

Réponse

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 ?

Réponse

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 ?

Réponse

Entre leurs opérandes.

49Question

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

Réponse

Avant ses opérandes.

50Question

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

Réponse

Après ses opérandes.

51Question

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

Réponse

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 + * ?

Réponse

288.

53Question

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

Réponse

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 ?

Réponse

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

55Question

Quelle caractéristique distingue la racine dans un arbre ?

Réponse

Elle n'a pas de père.

56Question

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

Réponse

Elle n'a pas de fils.

57Question

Que contient un nœud d'arbre binaire ?

Réponse

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

58Question

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

Réponse

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 ?

Réponse

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 ?

Réponse

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 ?

Réponse

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 ?

Réponse

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 ?

Réponse

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

64Question

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

Réponse

Il a 1 feuille.

65Question

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

Réponse

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 ?

Réponse

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 ?

Réponse

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 ?

Réponse

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 ?

Réponse

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

70Question

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

Réponse

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

71Question

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

Réponse

Il fournit les valeurs dans l’ordre croissant.

72Question

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

Réponse

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 ?

Réponse

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 ?

Réponse

Entre les appels gauche et droit.

75Question

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

Réponse

Après l’appel droit.

76Question

Comment est représenté un arbre vide ?

Réponse

Par le pointeur NULL.

77Question

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

Réponse

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 ?

Réponse

Un fils vide récursivement.

79Question

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

Réponse

Elle crée un arbre.

80Question

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

Réponse

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

81Question

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

Réponse

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 ?

Réponse

À droite.

83Question

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

Réponse

On crée un nœud.

84Question

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

Réponse

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 ?

Réponse

Elle renvoie 0.

86Question

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

Réponse

Elle renvoie 1.

87Question

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

Réponse

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 ?

Réponse

Le sous-arbre gauche est exploré.

89Question

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

Réponse

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 ?

Réponse

Elle correspond à un parcours postfixe.

91Question

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

Réponse

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

Teste-toi avec le QCM

Teste tes connaissances avec un QCM de 46 questions sur 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 ?

Faire le QCM →

Consultez la fiche

Révisez le cours complet dans la fiche de révision de Listes, piles, files et arbres.

Voir la fiche →

Cours similaires

Crée tes propres flashcards

Importe ton cours et l'IA génère des flashcards en 30 secondes.

Générateur de flashcards