Fondements de l’informatique : pack de révision

Formulaires, étapes clés de la méthode pour chaque thème et 20 exercices, avec les corrigés complets à la fin.

Nouveaux exercicesRetour au cours

Dans la fenêtre d’impression, choisissez « Enregistrer au format PDF » pour garder une copie sur votre appareil.

1Formules et méthodes

Systèmes de numération

Poids des positions
binaire 2k, octal 8k, hexa 16k
Vers le décimal
Σ dk·bk
Depuis le décimal
diviser par la base, lire les restes de bas en haut
Hexa ↔ binaire
un chiffre hexa = 4 bits
Complément à deux
inverser les bits et ajouter 1

Logique propositionnelle et preuves

Lignes d’une table de vérité
2ⁿ
Implication
p → q ≡ ¬p ∨ q ≡ ¬q → ¬p
Implication niée
¬(p → q) ≡ p ∧ ¬q
Équivalence
p ↔ q ≡ (p → q) ∧ (q → p)
De Morgan
¬(p ∧ q) ≡ ¬p ∨ ¬q, ¬(p ∨ q) ≡ ¬p ∧ ¬q
Lois de distributivité
p ∨ (q ∧ r) ≡ (p ∨ q) ∧ (p ∨ r), p ∧ (q ∨ r) ≡ (p ∧ q) ∨ (p ∧ r)
Quantificateurs niés
¬∀x P(x) ≡ ∃x ¬P(x), ¬∃x P(x) ≡ ∀x ¬P(x)
Modus ponens, modus tollens
p → q, p ⊢ q; p → q, ¬q ⊢ ¬p

Méthode

  1. Comptez les variables distinctes : la table de vérité a 2ⁿ lignes, la première avec toutes les variables à 1.
  2. Donnez à chaque sous-formule sa propre colonne et remplissez les colonnes de l’intérieur vers l’extérieur.
  3. Appliquez la règle de chaque connecteur : → n’est 0 que pour 1 → 0, ↔ vaut 1 quand les deux côtés sont égaux.
  4. Pour des équivalences, comparez les colonnes finales ligne par ligne ; pour un raisonnement, regardez seulement les lignes où toutes les prémisses valent 1.
  5. Pour nier un énoncé quantifié, faites passer ¬ vers l’intérieur, échangez ∀ et ∃, et niez la formule intérieure.

Logique numérique : portes, tableaux de Karnaugh et bascules

Portes de base
A·B, A + B, A′, (A·B)′, (A + B)′, A ⊕ B
Règles booléennes
X + X′ = 1, X·X′ = 0, X + XY = X, XY + XY′ = X
De Morgan
(X·Y)′ = X′ + Y′, (X + Y)′ = X′·Y′
Ordre du tableau de Karnaugh
00, 01, 11, 10 (Gray code)
Groupe de 2ᵏ cases
perd k variables
Multiplexeur 4 vers 1
F = A′B′I0 + A′BI1 + AB′I2 + ABI3
Bascules
D: Q⁺ = D, T: Q⁺ = T ⊕ Q, JK: Q⁺ = JQ′ + K′Q
Compteurs
n bits : 2ⁿ états ; modulo N : plus petit n tel que 2ⁿ ≥ N ; fout = fclk/N
Compteur asynchrone
fmax = 1/(n·tpd)
Compteurs en anneau et Johnson
n et 2n états

Méthode

  1. Pour un circuit, travaillez des entrées vers la sortie, une porte à la fois, et écrivez la valeur sur chaque fil, ou écrivez son expression et remplissez la table de vérité.
  2. Pour la simplification, placez les 1 (et les états indifférents sous forme de X) dans un tableau de Karnaugh dont les lignes et colonnes suivent le code de Gray : 00, 01, 11, 10.
  3. Couvrez les 1 avec le moins possible de groupes de 1, 2, 4, 8 ou 16 cases, aussi grands que possible, en débordant sur les bords ; chaque groupe est un terme produit formé des variables qui restent constantes. Regroupez les 0 pour la forme POS.
  4. Pour les bascules et les compteurs, lisez les entrées à chaque front d’horloge actif, notez l’état après chaque front, et rappelez-vous qu’un compteur de n bits repasse à zéro après 2ⁿ états.

Théorie des nombres et arithmétique modulaire

Division avec reste
a = q·n + r, 0 ≤ r < n
Euclide
gcd(a, b) = gcd(b, a mod b)
Plus petit commun multiple
lcm(a, b) = a·b/gcd(a, b)
Inverse
a·a⁻¹ ≡ 1 (mod n), gcd(a, n) = 1
Congruence linéaire
a·x ≡ b → x ≡ a⁻¹·b (mod n)
Indicatrice d’Euler
φ(n) = n·∏(1 − 1/p), φ(pᵏ) = pᵏ − pᵏ⁻¹
Fermat
aᵖ⁻¹ ≡ 1 (mod p)
RSA
n = pq, φ = (p − 1)(q − 1), d = e⁻¹ mod φ, c = mᵉ mod n, m = cᵈ mod n

Méthode

  1. Réduisez d’abord chaque nombre modulo n ; les restes sont compris entre 0 et n − 1.
  2. Pour un pgcd, divisez plusieurs fois avec l’algorithme d’Euclide ; le dernier reste non nul est le pgcd.
  3. Pour un inverse, appliquez l’algorithme étendu et gardez le coefficient de a ; ajoutez n s’il est négatif.
  4. Résolvez a·x ≡ b en multipliant par a⁻¹ ; combinez deux congruences en écrivant x = r₁ + m₁k.
  5. Pour les puissances, écrivez l’exposant en binaire et élevez au carré à répétition ; en RSA, d = e⁻¹ mod φ(n) avec φ(n) = (p − 1)(q − 1).

Théorie des graphes

Lemme des poignées de main
Σ deg(v) = 2|E|
Graphes complets
|E(Kn)| = n(n − 1)/2, |E(Km,n)| = m·n
Graphe régulier
|E| = n·k/2
Arbre et forêt
|E| = n − 1, |E| = n − c
Feuilles d’un arbre
L = 2 + Σ (deg(v) − 2) over deg(v) ≥ 3
Euler
circuit : tous les degrés pairs ; chemin : exactement 2 degrés impairs
Circuits hamiltoniens dans Kn
(n − 1)!/2
Mise à jour de Dijkstra
d(v) = min(d(v), d(u) + w(u, v))
Marches de longueur L
(Mᴸ)ij

Méthode

  1. Notez le degré de chaque sommet ; la somme des degrés vaut deux fois le nombre d’arêtes.
  2. Pour les questions d’Euler, vérifiez que le graphe est connexe et comptez les sommets de degré impair.
  3. Pour les arbres, utilisez n − 1 arêtes et le lemme des poignées de main.
  4. Pour Dijkstra, tenez un tableau des distances provisoires et fixez à chaque tour le sommet non fixé de plus petite distance.
  5. Pour un arbre couvrant minimal, triez les arêtes par poids et sautez toute arête qui ferme un cycle (Kruskal), ou faites croître un arbre à partir d’un sommet de départ (Prim).

Sous-réseaux IPv4

Hôtes par sous-réseau
2(32 − prefix) − 2 (/31: 2, /32: 1)
Taille de bloc
256 − (mask octet)
Adresse réseau
IP AND masque
Adresse de diffusion
IP OR (NOT masque) : tous les bits d’hôte à 1
Sous-réseaux avec n bits empruntés
2n

2Exercices

1.Systèmes de numérationMoyen
complément à deux sur 8 bits?−128?64?32?16?8?4?2?1

Écris −25 comme motif de 8 bits en complément à deux. Lis ce motif comme un nombre binaire non signé : quelle est sa valeur U en décimal ?

N = −258 bit
U =
2.Systèmes de numérationDifficile
3392 codes, b = ? bits?2ᵇ⁻¹…?4?2?1

Un système doit donner à chacun de 3392 éléments son propre code binaire, tous de même longueur. Quel est le plus petit nombre de bits b nécessaire ?

3392
b = bit
3.Logique propositionnelle et preuvesMoyen
pqrq ∧ (r ∧ p)q ∧ r(q ∧ (r ∧ p)) ∨ (q ∧ r)111?110?101?100?011?010?001?000?

Dans combien des 8 lignes de sa table de vérité (q ∧ (r ∧ p)) ∨ (q ∧ r) est-elle vraie ? Appelez ce nombre N.

(q ∧ (r ∧ p)) ∨ (q ∧ r)
N =
4.Logique propositionnelle et preuvesDifficile
∃x ∀y ¬R(x, y)∀x ∀y ¬R(x, y)∀x ∃y ¬R(x, y)∃x ∃y ¬R(x, y)

Quel énoncé est équivalent à ¬∃x ∀y R(x, y), la négation étant passée complètement à l’intérieur ? Cliquez dessus.

¬∃x ∀y R(x, y)
  1. 1∃x ∀y ¬R(x, y)
  2. 2∀x ∀y ¬R(x, y)
  3. 3∀x ∃y ¬R(x, y)
  4. 4∃x ∃y ¬R(x, y)
5.Logique numérique : portes, tableaux de Karnaugh et basculesMoyen
ABCD000111100001111000111312040517061121131151141809111010

Utilisez le tableau de Karnaugh pour trouver la forme somme de produits (SOP) minimale de F(A, B, C, D) = Σm(1, 2, 3, 7, 8, 11, 12, 13, 14, 15). Combien de littéraux L contient-elle au total (une variable primée compte pour un littéral) ?

F(A, B, C, D) = Σm(1, 2, 3, 7, 8, 11, 12, 13, 14, 15)
L =
6.Logique numérique : portes, tableaux de Karnaugh et basculesDifficile
ABCD0001111000011110X0011312X4X5X716X121130150141809011X10

Trouvez la forme SOP minimale de F(A, B, C, D) = Σm(2, 3, 6, 8, 13) + d(0, 4, 5, 7, 10, 12), où d marque les états indifférents. Combien de termes produits N a-t-elle ?

F(A, B, C, D) = Σm(2, 3, 6, 8, 13) + d(0, 4, 5, 7, 10, 12)
N =
7.Théorie des nombres et arithmétique modulaireMoyen

Résolvez 11x ≡ 1 (mod 14). Donnez la solution x avec 0 < x < 14.

11x ≡ 1 (mod 14)
x =
8.Théorie des nombres et arithmétique modulaireDifficile
mc = me​ mod n20m = cd​ mod n?(n, e) = (221, 7)d

Une clé RSA utilise p = 13, q = 17 et e = 7. Déchiffrez le chiffré c = 20 : trouvez le message m.

p = 13q = 17e = 7c = 20
m =
9.Algorithmes et complexitéMoyen

Le parcours en largeur (BFS) sur un graphe non pondéré trouve :

  1. AL'arbre couvrant de poids minimal
  2. BLes plus courts chemins en nombre d'arêtes depuis le nœud de départ
  3. CUn ordre topologique dans tous les graphes
  4. DLes plus courts chemins dans les graphes qui contiennent des poids d'arêtes négatifs
10.Algorithmes et complexitéDifficile

D'après le théorème maître, T(n) = 8T(n/2) + O(n²) a pour solution :

  1. AΘ(n log n)
  2. BΘ(n³)
  3. CΘ(n² log n)
  4. DΘ(n²)
11.Structures de donnéesMoyen

Un tampon circulaire (ring buffer) est couramment utilisé pour implémenter :

  1. AUn arbre binaire de recherche
  2. BUne fonction de hachage
  3. CUne file de taille fixe
  4. DUn parcours de graphe
12.Structures de donnéesDifficile

Un nœud AVL est déséquilibré parce que le sous-arbre droit de son enfant gauche est devenu trop haut (cas gauche-droite). Quelle correction applique-t-on ?

  1. AUne rotation à droite sur l'enfant gauche, puis une rotation à gauche sur le nœud
  2. BUne rotation à gauche sur l'enfant gauche, puis une rotation à droite sur le nœud
  3. CUne rotation simple à gauche sur le nœud
  4. DUne rotation simple à droite sur le nœud
13.Théorie des graphesMoyen
ABCDECircuit eulérienChemin eulérien, pas de circuitni l’une ni l’autre

Le graphe connexe a-t-il un circuit eulérien, un chemin eulérien qui n’est pas un circuit, ou ni l’un ni l’autre ? Cliquez sur votre réponse.

|V| = 5|E| = 6
  1. 1Circuit eulérien
  2. 2Chemin eulérien, pas de circuit
  3. 3ni l’une ni l’autre
14.Théorie des graphesDifficile
81791120614215ABCDEFG

Trouvez le poids total W d’un arbre couvrant minimal du graphe pondéré.

|V| = 7|E| = 9
W =
15.Bases de données et SQLMoyen

Un LEFT JOIN renvoie :

  1. ALes lignes qui ne correspondent dans aucune des deux tables
  2. BUniquement toutes les lignes de la table de droite
  3. CToutes les lignes de la table de gauche et les lignes correspondantes de droite, avec des NULL en l'absence de correspondance
  4. DUniquement les lignes correspondantes des deux tables
16.Bases de données et SQLDifficile

Que renvoie SELECT name, dept, AVG(salary) OVER (PARTITION BY dept) FROM emp ?

  1. AUniquement les employés qui gagnent plus que la moyenne de leur service
  2. BUne ligne par service avec son salaire moyen
  3. CChaque ligne d'employé accompagnée du salaire moyen de son service
  4. DUne erreur, car name ne figure pas dans un GROUP BY
17.Réseaux informatiquesMoyen

Un routeur a des routes pour 10.0.0.0/8 et 10.1.0.0/16. Quelle route utilise-t-il pour un paquet à destination de 10.1.5.5 ?

  1. A10.1.0.0/16, car c'est le préfixe correspondant le plus long
  2. BLes deux routes, en répartissant le trafic à parts égales
  3. C10.0.0.0/8, car elle couvre plus d'adresses que la /16
  4. D10.0.0.0/8, car elle a été ajoutée en premier
18.Réseaux informatiquesDifficile

Avec les protocoles à fenêtre glissante, en quoi Go-Back-N diffère-t-il de Selective Repeat après la perte d'une trame ?

  1. ALes deux renvoient toute la fenêtre depuis le début
  2. BAucun des deux ne renvoie jamais les trames perdues
  3. CGo-Back-N renvoie la trame perdue et toutes les suivantes ; Selective Repeat seulement la trame perdue
  4. DGo-Back-N ne renvoie que la trame perdue ; Selective Repeat renvoie cette trame et toutes les suivantes
19.Sous-réseaux IPv4Moyen
/24 → /2711111111111111111111111111100000bits réseaubits hôte

Le réseau 192.168.10.0/24 doit être divisé en au moins 5 sous-réseaux égaux. Si tu empruntes le moins de bits possible, combien d'hôtes utilisables H chaque sous-réseau a-t-il ?

192.168.10.0/245 subnets
H =
20.Sous-réseaux IPv4Difficile
troisième octet = 134112806403201608141201réseauhôte

Un hôte a l’adresse 172.20.134.60/22. Quel est le troisième octet x de son adresse réseau ?

172.20.134.60/22
x =

3Solutions

1.Systèmes de numération

Réponse: U = 231

Systèmes de numération positionnels : chaque chiffre vaut sa valeur multipliée par une puissance de la base. En binaire les positions valent 1, 2, 4, 8, 16, … ; en hexadécimal 1, 16, 256, …, avec A–F pour 10–15. En complément à deux sur 8 bits, le bit de gauche vaut −128 au lieu de +128 : c'est ainsi qu'on stocke les nombres négatifs.

Inverser et ajouter un

25 = 0001 1001
inversé: 1110 0110
+1 → 1110 0111

Le lire en non signé

1110 0111₂ = 256 − 25 = 231

Réponse

U = 231
2.Systèmes de numération

Réponse: b = 12 bit

Systèmes de numération positionnels : chaque chiffre vaut sa valeur multipliée par une puissance de la base. En binaire les positions valent 1, 2, 4, 8, 16, … ; en hexadécimal 1, 16, 256, …, avec A–F pour 10–15. En complément à deux sur 8 bits, le bit de gauche vaut −128 au lieu de +128 : c'est ainsi qu'on stocke les nombres négatifs.

Puissances de deux

211 = 2048 < 3392
212 = 4096 ≥ 3392

Réponse

b = 12
3.Logique propositionnelle et preuves

Réponse: N = 2

Tables de vérité : une formule à n variables distinctes a 2ⁿ lignes, une pour chaque combinaison de valeurs de vérité (1 = vrai, 0 = faux). Travaillez de l’intérieur vers l’extérieur et donnez à chaque sous-formule sa propre colonne. ¬a inverse la valeur ; a ∧ b vaut 1 seulement quand les deux valent 1 ; a ∨ b vaut 0 seulement quand les deux valent 0 ; a → b vaut 0 seulement quand a = 1 et b = 0 ; a ↔ b vaut 1 quand les deux côtés sont égaux.

Table de vérité ligne par ligne

p = 1, q = 1, r = 1: r ∧ p = 1, q ∧ (r ∧ p) = 1, q ∧ r = 1, (q ∧ (r ∧ p)) ∨ (q ∧ r) = 1
p = 1, q = 1, r = 0: r ∧ p = 0, q ∧ (r ∧ p) = 0, q ∧ r = 0, (q ∧ (r ∧ p)) ∨ (q ∧ r) = 0
p = 1, q = 0, r = 1: r ∧ p = 1, q ∧ (r ∧ p) = 0, q ∧ r = 0, (q ∧ (r ∧ p)) ∨ (q ∧ r) = 0
p = 1, q = 0, r = 0: r ∧ p = 0, q ∧ (r ∧ p) = 0, q ∧ r = 0, (q ∧ (r ∧ p)) ∨ (q ∧ r) = 0
p = 0, q = 1, r = 1: r ∧ p = 0, q ∧ (r ∧ p) = 0, q ∧ r = 1, (q ∧ (r ∧ p)) ∨ (q ∧ r) = 1
p = 0, q = 1, r = 0: r ∧ p = 0, q ∧ (r ∧ p) = 0, q ∧ r = 0, (q ∧ (r ∧ p)) ∨ (q ∧ r) = 0
p = 0, q = 0, r = 1: r ∧ p = 0, q ∧ (r ∧ p) = 0, q ∧ r = 0, (q ∧ (r ∧ p)) ∨ (q ∧ r) = 0
p = 0, q = 0, r = 0: r ∧ p = 0, q ∧ (r ∧ p) = 0, q ∧ r = 0, (q ∧ (r ∧ p)) ∨ (q ∧ r) = 0

Compter les lignes de valeur 1

(q ∧ (r ∧ p)) ∨ (q ∧ r): 1, 0, 0, 0, 1, 0, 0, 0
N = 2

Réponse

N = 2
4.Logique propositionnelle et preuves

Réponse: ∀x ∃y ¬R(x, y)

Quantificateurs et raisonnements : ¬∀x P(x) ≡ ∃x ¬P(x) et ¬∃x P(x) ≡ ∀x ¬P(x). Faites passer une négation vers l’intérieur, échangez chaque quantificateur qu’elle traverse, et niez la formule intérieure avec les lois propositionnelles, comme ¬(a → b) ≡ a ∧ ¬b. Un raisonnement est valide quand la conclusion vaut 1 dans toutes les lignes où toutes les prémisses valent 1. Une seule ligne avec des prémisses vraies et une conclusion fausse est un contre-exemple et montre que le raisonnement est invalide.

Faire passer la négation vers l’intérieur

¬∃x ∀y R(x, y) ≡ ∀x ∃y ¬R(x, y)

Réponse

∀x ∃y ¬R(x, y)

Les autres options laissent un quantificateur inchangé, changent l’ordre des quantificateurs, ou nient mal la formule intérieure.

5.Logique numérique : portes, tableaux de Karnaugh et bascules

Réponse: L = 13

Tableaux de Karnaugh : les cases sont ordonnées en code de Gray (00, 01, 11, 10), donc les cases voisines, y compris celles de part et d’autre des bords, diffèrent par exactement une variable. Regroupez les 1 en rectangles de 1, 2, 4, 8 ou 16 cases, aussi grands que possible et en aussi petit nombre que possible, jusqu’à ce que chaque 1 soit couvert. Chaque groupe est un terme produit : les variables qui restent constantes à l’intérieur. Un groupe de 2ᵏ cases perd k variables. Les états indifférents (X) peuvent servir à agrandir les groupes mais n’ont jamais besoin d’être couverts. Regrouper les 0 donne la forme POS minimale.

ABCD000111100001111000111312040517061121131151141809111010

Regrouper les 1

Chaque groupe est un rectangle de 2ᵏ cases ; les cases de bord sont voisines des cases du bord opposé.

CD
AC′D′
AB
A′B′D
A′B′C

Forme SOP minimale

F = CD + AC′D′ + AB + A′B′D + A′B′C
L = 13

Réponse

L = 13
6.Logique numérique : portes, tableaux de Karnaugh et bascules

Réponse: N = 3

Tableaux de Karnaugh : les cases sont ordonnées en code de Gray (00, 01, 11, 10), donc les cases voisines, y compris celles de part et d’autre des bords, diffèrent par exactement une variable. Regroupez les 1 en rectangles de 1, 2, 4, 8 ou 16 cases, aussi grands que possible et en aussi petit nombre que possible, jusqu’à ce que chaque 1 soit couvert. Chaque groupe est un terme produit : les variables qui restent constantes à l’intérieur. Un groupe de 2ᵏ cases perd k variables. Les états indifférents (X) peuvent servir à agrandir les groupes mais n’ont jamais besoin d’être couverts. Regrouper les 0 donne la forme POS minimale.

Implicants premiers

Les plus grands groupes pouvant être formés de 1 et de X.

C′D′, B′D′, BC′, A′D′, A′C, A′B
ABCD0001111000011110X0011312X4X5X716X121130150141809011X10

Couverture minimale

F = C′D′ + BC′ + A′C
N = 3

Réponse

N = 3

Il existe un autre regroupement de même taille ; il a le même nombre de termes et de littéraux.

7.Théorie des nombres et arithmétique modulaire

Réponse: x = 9

Inverses et congruences : a a un inverse modulo n exactement quand pgcd(a, n) = 1. L’algorithme d’Euclide étendu écrit 1 = s·n + t·a, et alors a⁻¹ ≡ t (mod n). Une congruence a·x ≡ b (mod n) avec pgcd(a, n) = 1 a pour solution x ≡ a⁻¹·b. Deux congruences x ≡ r₁ (mod m₁) et x ≡ r₂ (mod m₂) à modules premiers entre eux ont une solution modulo m₁·m₂ (théorème des restes chinois). L’indicatrice d’Euler φ(n) compte les nombres de 1 à n premiers avec n : φ(n) = n·∏(1 − 1/p).

Inversez de 11

r = 14, t = 0
r = 11, q = 1, t = 1
r = 3, q = 3, t = −1
r = 2, q = 1, t = 4
r = 1, q = 2, t = −5
11−1 ≡ 9 (mod 14)

Résoudre

x ≡ 9·1 = 9 ≡ 9 (mod 14)
vérification: 11·9 = 99 ≡ 1 (mod 14)

Réponse

x = 9
8.Théorie des nombres et arithmétique modulaire

Réponse: m = 45

Puissances modulaires et RSA : calculez aᵏ mod n par carrés répétés : écrivez k en binaire, élevez au carré, réduisez après chaque étape et multipliez les puissances dont le bit vaut 1. Fermat : aᵖ⁻¹ ≡ 1 (mod p) pour un nombre premier p ne divisant pas a, donc l’exposant peut être réduit modulo p − 1. RSA : choisissez des nombres premiers p et q, n = p·q et φ(n) = (p − 1)(q − 1) ; l’exposant public e est premier avec φ(n), et l’exposant privé est d = e⁻¹ mod φ(n). Chiffre avec c = mᵉ mod n et déchiffrez avec m = cᵈ mod n.

Exposant privé

n = 221, φ(n) = 192
d = 7−1 mod 192 = 55

Déchiffrer par carré répété

55 = 32 + 16 + 4 + 2 + 1
201 ≡ 20 (mod 221)
202 ≡ 179 (mod 221)
204 ≡ 217 (mod 221)
208 ≡ 16 (mod 221)
2016 ≡ 35 (mod 221)
2032 ≡ 120 (mod 221)
2055 ≡ 20·179·217·35·120 ≡ 45 (mod 221)

Message

m = 45
vérification: 457 mod 221 = 20

Réponse

m = 45
9.Algorithmes et complexité

Réponse: B · Les plus courts chemins en nombre d'arêtes depuis le nœud de départ

Pourquoi c'est la réponse

BFS visite les nœuds par ordre de distance (en arêtes) depuis la source ; il trouve donc les plus courts chemins non pondérés en O(V + E).

Réponse

B · Les plus courts chemins en nombre d'arêtes depuis le nœud de départ
10.Algorithmes et complexité

Réponse: B · Θ(n³)

Pourquoi c'est la réponse

log₂ 8 = 3, et n² croît plus lentement que n³, donc les feuilles dominent : Θ(n³).

Réponse

B · Θ(n³)
11.Structures de données

Réponse: C · Une file de taille fixe

Pourquoi c'est la réponse

Un tampon circulaire utilise des indices de tête et de queue qui reviennent au début, ce qui permet enqueue et dequeue en O(1) dans une mémoire fixe.

Réponse

C · Une file de taille fixe
12.Structures de données

Réponse: B · Une rotation à gauche sur l'enfant gauche, puis une rotation à droite sur le nœud

Pourquoi c'est la réponse

La première rotation transforme le cas gauche-droite en cas gauche-gauche, qu'une rotation à droite sur le nœud déséquilibré corrige ensuite.

Réponse

B · Une rotation à gauche sur l'enfant gauche, puis une rotation à droite sur le nœud
13.Théorie des graphes

Réponse: Circuit eulérien

Euler, Hamilton et arbres : un graphe connexe a un circuit eulérien (chaque arête une fois, retour au départ) quand tous les sommets ont un degré pair, et un chemin eulérien qui n’est pas un circuit quand exactement deux sommets ont un degré impair ; le chemin va alors d’un sommet impair à l’autre. Un circuit hamiltonien visite chaque sommet une fois ; Kn en a (n − 1)!/2. Un arbre à n sommets a n − 1 arêtes, et un graphe connexe à m arêtes conserve un arbre couvrant après suppression de m − n + 1 arêtes.

Degrés

deg(A) = 2, deg(B) = 4, deg(C) = 2, deg(D) = 2, deg(E) = 2

Sommets impairs

0
Circuit eulérien

Réponse

Circuit eulérien
14.Théorie des graphes

Réponse: W = 56

Plus courts chemins et arbres couvrants : l’algorithme de Dijkstra fixe un sommet par tour : le sommet non fixé de plus petite distance provisoire. Sa distance est alors définitive, et chaque voisin v reçoit d(v) = min(d(v), d(u) + w(u, v)). L’algorithme de Kruskal construit un arbre couvrant minimal en prenant les arêtes de la plus légère à la plus lourde et en sautant toute arête qui fermerait un cycle ; l’algorithme de Prim fait croître un arbre à partir d’un sommet de départ en ajoutant toujours l’arête la plus légère qui en sort. Un arbre couvrant à n sommets a n − 1 arêtes.

Algorithme de Kruskal

GD (2): prise
GB (6): prise
AB (8): prise
CE (9): prise
DE (11): prise
GC (14): sautée, ferme un cycle
GE (15): sautée, ferme un cycle
AC (17): sautée, ferme un cycle
EF (20): prise

Poids total

W = 2 + 6 + 8 + 9 + 11 + 20 = 56

Réponse

W = 56
15.Bases de données et SQL

Réponse: C · Toutes les lignes de la table de gauche et les lignes correspondantes de droite, avec des NULL en l'absence de correspondance

Pourquoi c'est la réponse

Une jointure externe gauche conserve chaque ligne de gauche ; les colonnes de droite sans correspondance sont remplies avec NULL.

Réponse

C · Toutes les lignes de la table de gauche et les lignes correspondantes de droite, avec des NULL en l'absence de correspondance
16.Bases de données et SQL

Réponse: C · Chaque ligne d'employé accompagnée du salaire moyen de son service

Pourquoi c'est la réponse

Contrairement à GROUP BY, une fonction de fenêtrage conserve chaque ligne d'entrée et y ajoute une valeur calculée sur sa partition, ici le service.

Réponse

C · Chaque ligne d'employé accompagnée du salaire moyen de son service
17.Réseaux informatiques

Réponse: A · 10.1.0.0/16, car c'est le préfixe correspondant le plus long

Pourquoi c'est la réponse

Le routage IP utilise la correspondance du plus long préfixe : parmi toutes les routes qui correspondent à la destination, celle qui a le masque le plus long est choisie.

Réponse

A · 10.1.0.0/16, car c'est le préfixe correspondant le plus long
18.Réseaux informatiques

Réponse: C · Go-Back-N renvoie la trame perdue et toutes les suivantes ; Selective Repeat seulement la trame perdue

Pourquoi c'est la réponse

Un récepteur Go-Back-N rejette les trames hors séquence, l'émetteur doit donc tout répéter après la perte. Selective Repeat les met en mémoire tampon et ne demande que la trame manquante.

Réponse

C · Go-Back-N renvoie la trame perdue et toutes les suivantes ; Selective Repeat seulement la trame perdue
19.Sous-réseaux IPv4

Réponse: H = 30

Sous-réseaux IPv4 : une adresse a 32 bits. Le préfixe /p indique combien de bits de tête identifient le réseau ; les 32 − p bits restants numérotent les hôtes. Un sous-réseau a 2³²⁻ᵖ adresses, mais la première (adresse réseau) et la dernière (adresse de diffusion) ne peuvent pas être attribuées, il tient donc 2³²⁻ᵖ − 2 hôtes. Exceptions : un /31 (liaison point à point, RFC 3021) utilise ses 2 adresses pour des hôtes, et un /32 est une adresse unique (un seul hôte ou une interface de bouclage).

Bits à emprunter

23 = 8 ≥ 5 → b = 3, /27

Hôtes par sous-réseau

25 − 2 = 30

Réponse

H = 30
20.Sous-réseaux IPv4

Réponse: x = 132

IPv4 subnetting: an address has 32 bits. The prefix /p says how many leading bits identify the network; the remaining 32 − p bits number the hosts. A subnet has 2³²⁻ᵖ addresses, but the first (network address) and last (broadcast address) cannot be given to hosts, so 2³²⁻ᵖ − 2 hosts fit. Exceptions: a /31 (point-to-point link, RFC 3021) uses both of its 2 addresses for hosts, and a /32 is one single address (a single host or a loopback).

Taille de bloc dans le troisième octet

22 = 4

Sous-réseau de cet hôte

réseau: 172.20.132.0
diffusion: 172.20.135.255

Réponse

x = 132

ExamProblems · examproblems.com/courses/computer-science-fundamentals