• Aucun résultat trouvé

Exercice 1. QCM (5 points)

N/A
N/A
Protected

Academic year: 2022

Partager "Exercice 1. QCM (5 points)"

Copied!
2
0
0

Texte intégral

(1)

L3 Math-Info, Algorithmique: examen terminal

7 d´ ecembre 2018

Tout document manuscrit de cours autoris´e. T´el´ephones portables et autres outils de t´el´ecommunication interdits. Le bar`eme est sur 26, ce qui signifie qu’il n’est pas n´ecessaire de traiter l’ensemble du sujet pour avoir la note maximale. La qualit´e de la r´edaction sera ´evalu´ee au mˆeme niveau que l’exactitude des r´eponses. Dur´ee : 2h.

Exercice 1. QCM (5 points)

R´eponse correcte : +0,5pt, r´eponse incorrecte : -0,25pt, NSP ou sans r´eponse : 0pt.

Vrai Faux NSP La complexit´eO(n2/logn) est plus faible queO(n1.99) Rechercher un ´el´ement dans une liste denentiers tri´es peut se faire

enO(logn)

Rechercher un ´el´ement dans un tableau denentiers tri´es peut se faire

enO(logn)

Si T(n) = 10T(n/3) +n2, T(1) = 1 AlorsT(n) = Θ(n2) Un parcours postfixe d’un arbre binaire de recherche visite ses noeuds

par ordre croissant de leur valeur.

Si T(n) = 2n2/logn+Pn

i=0i.nalorsT(n) = Θ(n2)

L’insertion d’un ´el´ement dans un ABR quelconque dennoeuds se fait

enO(logn)

On peut calculer le signe de l’angle orient´e de deux vecteurs

en 2 multiplications et une soustraction.

Un algorithme probabiliste est un algorithme correct sur toutes ses

entr´ees sauf une proportion born´ee par

L’algorithme du scan de Graham est toujours plus rapide que la marche de Jarvis

Exercice 2. Arbres binaires de recherche (4 points)

a. ´Ecrire un algorithm r´ecursif effectuant la suppression d’un ´el´ement dans un arbre binaire de re- cherche. On distinguera trois cas : selon que l’´el´ement poss`ede 0, 1 ou 2 descendants.

b. Quelle est sa complexit´e en pire cas en fonction de la hauteurhde l’arbre ?

Exercice 3. Alg` ebre lin´ eaire (4 pts)

a. Montrer que sia6= 0, c6= 0 alors a b 0 c

−1

=

a−1 −a−1bc−1 c−1

b.En d´eduire un algorithme de type diviser pour r´egner, calculant l’inverse d’une matrice triangulaire sup´erieure inversible.

c. Quelle est la complexit´e de cet algorithme ? On supposera que le produit de deux matrices carr´ees n×npeut se calculer en Θ(nω) avec 2< ω≤3.

UGA – L3 Maths/Info – Algorithmique – Cl´ement Pernet Page 1/2

(2)

Exercice 4. V´ erification probabiliste du produit matriciel (5 points)

On souhaite v´erifier un produit de matricesA×B =C o`uA, B et C sont n×n `a coefficients dans Z/pZ. L’id´ee est de tirer un vecteur ual´eatoirement et de calculerx=A(Bu) et y=Cu et de v´erifier que ces deux vecteurs sont ´egaux.

a. De quel classe d’algorithme probabiliste s’agit-il ?

b. Dans le cas o`u chaque coefficient de uest choisi uniform´ement dansZ/pZ, rappeler quelle est la probabilit´e d’´echec de cet algorithme.

Afin de r´eduire le nombre de valeur al´eatoires tir´ees, on propose l’algorithme suivant pour former le vecteur u:

fori= 0. . .

n−1do a[i]←rand(Z/pZ).

b[i]←rand(Z/pZ).

end for fori= 0. . .

n−1do forj= 0. . .

n−1 do u[i∗√

n+j]←a[ib[j] end for

end for

c. Quelle est la complexit´e en temps de cette g´en´eration deu? d. Combien de valeurs al´eatoires sont utilis´ees ?

e. En utilisant le Lemme de Schwartz-Zippel, d´eterminer la probabilit´e d’´echec de l’algorithme de v´erification, utilisant ce vecteuru.

Exercice 5. Programmation dynamique (8 points)

Un distributeur de boisson automatique doit rendre la monnaie avec la contrainte de donner un nombre minimal de pi`eces `a chaque fois. On supposera que le distributeur dispose toujours d’une quantit´e infinie de pi`eces de chaque type.

On rappelle dans le tableau suivant les diff´erentes pi`eces existantes pour les trois principales monnaies du moment.

euro € 0,01 0,02 0,05 0,10 0,20 0,5 1 2 dollar $ 0,01 0,05 0,10 0,25

brousouf ß 1 10 17 31 42

On rappelle qu’une strat´egie gloutonne consiste `a donner d’abord le plus de pi`eces ayant la plus forte valeur, puis de celles de valeur imm´ediatement inf´erieure, etc.

a. Pour chacune des ces monnaies, dire si une strat´egie gloutonne permet de rendre la monnaie de fa¸con optimale. Donner un argument pour les cas positifs, et un contre-exemple pour les cas n´egatifs.

Pour le ou les cas o`u la solution par algorithme glouton n’existe pas, on se propose de r´esoudre ce probl`eme par programmation dynamique. On noterasla somme que doit rendre le distributeur. Il y ak types de pi`eces, de valeur croissante :v1< v2<· · ·< vk.

On cherche donc `a calculer des quantit´es de chaque type pi`eces `a rendren1, n2, . . . , nktels quePk i=1ni soit minimal etPk

i=1nivi=s. On noteraN(s, k) ce nombre minimal de pi`eces `a rendre pour atteindre la valeursavec les kpremiers types de pi`eces.

b. Justifier que

N(s, k) = min

0≤i≤bs/vkc(i+N(sivk, k−1)), N(0, k) = 0, N(s,0) = +∞ c. En d´eduire un algorithme r´ecursif avec m´emo¨ısation calculant la valeur deN(s, l).

d. Proposer une variante it´erative calculant N(s, k) ainsi que la fa¸con d’atteindre cette valeur : la donn´ee des nombres de pi`ecesn1, n2, . . . , nk.

UGA – L3 Maths/Info – Algorithmique – Cl´ement Pernet Page 2/2

Références

Documents relatifs

Le temps calculé lors de la question 1) est la différence entre la plus grande et la plus petite valeur de la série statistique.. Cela correspond donc à l’étendue de la

Retrouver le résultat le plus proche

En Tunisie, il y’a quatre Opérateurs de téléphone portable : Tunisie Télécom, Tunisiana, Ellissa

La notation sera également déterminée par la qualité et la clarté de

Justifiez vos réponses en citant une propriété du cours ou en effectuant un calcul pour montrer que l’affirmation est vraie, ou en donnant un contre-exemple pour montrer qu’elle

[1 point] Dresser le tableau de variation de la fonction f en faisant apparaitre les racines éventuelles dans le

De ce fait, il ne peut être dupliqué et doit être imprimé pour chaque candidat afin d’assurer ensuite sa bonne numérisation. ☐ Ce sujet intègre des éléments en couleur.

Numéro du billet d'entrée Date et l’heure du billet d'entrée Période de l'absence de l’élève Code du motif d'absence ou de