Vous êtes sur la page 1sur 5

TD ODD2

Exercice 1 (Série n°2)


Master 1 GLT

BADJARA Mohamed El Amine


Qst1.

Il n’existe pas un transversal contenant


un seul sommet, car il n’existe aucun 3
sommet qui est incident à tous les
arêtes.
2
4

𝑇 = {2,4} est un transversal minimum


pour ce cas. 5 1
Qst2.
𝒆∗ 𝑻[. ] 𝒏𝑻 𝒄𝒑𝒕 𝒄𝒐𝒖𝒗[. ]
- [0 0 0 0 0 0 0 0] 0 0 [0 0 0 0 0 0 0]
1 [1 1 0 0 0 0 0 0] 2 5 [1 1 1 1 1 0 0]
6 [1 1 1 1 0 0 0 0] 4 7 [1 1 1 1 1 1 1

Qst3.
Les sommets 𝑥 pour les quels 𝑇 𝑥 = 1 représentent sont les sommets formant le
transversal tel que 𝑛𝑇 représente le cardinal de cet ensemble.
Qst4.

Algorithme APX-T ; tant que cpt < m faire


Entrées: n, m : entiers; // Instruction 6
ex1, ex2: tableaux de m entiers; trouver <- vrai; i <- 1;
Sorties: nT: entier; tant que i<=m et trouver=vrai faire
T: tableau de n entiers; si couv[i]=0 alors
var trouver <- faux;
i, e, a, b, cpt : entier; sinon
trouver: booléen; i <- i+1;
Début fsi
// Instruction 1 fait
pour i <- 1 haut n faire e <- i; a <- ex1[e]; b <- ex2[e];
T[i] <- 0; T[a] <- 1; T[b] <- 1; nT <- nT +2;
fait // Instructions 8 et 9
nT <- 0; pour i<-1 haut m faire
// Instruction 3 si couv[i] = 0 et (ex1[i] = a ou ex2[i] = b)
pour i <- 1 haut m faire et (ex1[i] = b ou ex2[i] = a) alors
couv[i] <- 0; cpt <- cpt +1;
fait couv[i] <- 1;
cpt <- 0; fsi
fait
fait
retourner T et nT;
Fin
Qst5.

Nombre d’instructions de l’algorithme 𝑁 𝐴𝑃𝑋 − 𝑇 ≤


1 + 5𝑛 + 1 + 1 + 1 + 5𝑚 + 1 + 1 + 𝑚 3 + 𝑚 3 + 4 + 3 + 11 + 1 + 𝑚 3 + 14 + 4 + 1 + 3
= 9 + 5𝑛 + 5𝑚 + 19𝑚 + 28𝑚² = 28𝑚² + 24𝑚 + 5𝑛 + 9

On prend: 𝑟 = max 𝑛, 𝑚 , donc: 𝑁 𝐴𝑃𝑋 − 𝑇 ≤ 28𝑟² + 24𝑟 + 5𝑟 + 9 = 28𝑟² + 29𝑟 + 9


Donc: 𝑁 𝐴𝑃𝑋 − 𝑇 = 𝑂 𝑟 2 .
D’où l’algorithme est polynomial.

Qst6.

8−8 7−6 11 − 10
𝐸 𝐼1 = = 0; 𝐸 𝐼2 = = 0.1666; 𝐸 𝐼3 = = 0.1;
8 6 10
15 − 14 12 − 13 5−5
𝐸 𝐼4 = = 0.0714; 𝐸 𝐼5 = = −0.0769; 𝐸(𝐼6) = = 0
14 13 5
𝐸𝑚𝑎𝑥 = 0.1666; 𝐸𝑚𝑜𝑦 = 0.0435

Qst7.

TRANSVERSAL :
Input: Un graphe 𝐺 = (𝑉, 𝐸) non orienté simple et un entier 𝑘.
Output: Existe-t-il dans 𝐺 un transversal de taille ≤ 𝑘?
Qst8.

Il suffit de donner un algorithme polynomial qui vérifie qu’un tableau donné 𝑇 . décrit bien un
transversal de taille 𝑘.
Algorithme VERIFIE_TRANSVERSAL ; tant que x < n et h < m faire
Entrées: n, m, k : entiers; si T[x] = 1 alors
ex1, ex2: tableaux de m entiers; cpt <- cpt + 1;
T : tableau de n entiers; pour i <- 1 haut m faire
Sorties: VRAI si T[.] représente un si couv[i]=0 et (ex1[i]=x ou ex2[i]=x) alors
transversal de taille k, FAUX sinon couv[i] <- 1;
var h <- h + 1;
i, e, h, x, cpt : entier; fsi
trouver: booléen; fait
Début fsi
cpt <- 0; // compte le nombre de x <- x + 1;
sommets dans T fait
h <- 0; // compte le nombre d’arrêtes retourner (cpt = k et h = m);
couvertes Fin
pour i <- 1 haut m faire
couv[i] <- 0; On remarque que l’algorithme est en 𝑂 𝑟 2 où
fait 𝑟 = max 𝑛, 𝑚 donc il est polynomial.
x <- 1;

Vous aimerez peut-être aussi