Exercice 2 Algorithmes mystères et calcul de complexité (15 min)

Exercice 2 Algorithmes mystères et calcul de complexité (15 min)
On considère les deux algorithmes suivants où Aest un tableau d’éléments, key est un élément de type
elem et iun entier.
Algorithme 1 : ALGO-X(A,key)
1i1
2while iA.length do
3if A[i] == key then
4AALGO-X-SUB(A, i )
5else
6ii+ 1
7return A
Algorithme 2 : ALGO-X-SUB(A,i)
1while i < A.length do
2A[i]A[i+ 1]
3ii+ 1
4A[i]NIL
5return A
Question 2.1 Complexité
Analysez la complexité dans le pire et dans le meilleur cas de ces algorithmes en fonction de la taille n
du tableau A(en nombre d’opérations de base). Vos réponses devront être justifiées.
Réponse
6
Question 2.2 Compréhension d’algorithmes
Expliquez brièvement ce que font ces algorithmes. Vous pourrez pour cela illustrer votre explication par
des exemples.
Réponse
Question 2.3 Amélioration d’algorithmes
Ecrire un algorithme BETTER-ALGO-X faisant la même chose mais avec une complexité asymptotique
strictement inférieure dans le pire des cas. Des algorithmes ou des structures de données vues en cours
pourront être exploitées. Votre réponse devra être justifiée.
Réponse
7
Question 2.4 Recherche de motifs dans une liste
On considère l’algorithme MATCH qui reçoit en entrée un tableau Ade taille net un motif P[1..m](avec
1mn) et qui renvoie la position lde la première occurrence du motif Pdans le tableau A, c’est-à-dire
l=psi A[p..p +m1] = P.l=1si le motif Pn’apparaît pas dans le tableau A.
L’algorithme MATCH est incorrect. Repérez l’erreur, expliquez la et écrivez une version correcte de cet
algorithme.
Algorithme 3 : MATCH(A,P,n,m)
1l0
2matched FALSE
3while lnand not matched do
4ll+ 1
5r1
6matched TRUE
7while rmand matched do
8matched matched and(P[r] == A[l+r1])
9rr+ 1
10 if matched then
11 return l
12 else
13 return 1
Réponse
8
Question 2.5 Complexité dans le pire des cas
Donner un exemple correspondant au pire des cas (pour un tableau et un motif quelconque) et calculer
la complexité dans le pire des cas de l’algorithme corrigé en fonction de met de n. Votre réponse devra être
justifiée.
Réponse
Question 2.6 Complexité dans le meilleur des cas
Donner un exemple correspondant au meilleur des cas (pour un tableau et un motif quelconque) et calculer
la complexité dans le meilleur des cas de l’algorithme corrigé en fonction de met de n. Votre réponse devra
être justifiée.
Réponse
9
Exercice 5 Graphes (30 min)
Dans cet exercice, on considère des graphes orientés simples Gdonnés sous la forme d’un couple (V, E)
avec Vensemble de sommets de Get Eensemble d’arcs (u, v)avec usommet source et vsommet cible.
1
2
3 5
4
6
Figure 1 – Graphe Gr
Question 5.1
Pour le graphe Gr donné en figure 1, donner tous les parcours en largeur possibles (sous forme de liste
des numéros des sommets dans l’ordre de visite) en partant soit du sommet 1, soit du sommet 3.
Combien y-a-t-il de parcours en largeur à partir de ces sommets 1et 3?
Réponse
22
1 / 13 100%

Exercice 2 Algorithmes mystères et calcul de complexité (15 min)

La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !