Conception d’algorithmes et applications (LI325)
Cours 9: Introduction aux algorithmes probabilistes
Ana Buˇ
si´
c
http://www.di.ens.fr/~busic/LI325.html
Motivation
Tri rapide (aussi appel´e ”tri de Hoare”, QuickSort) :
QuickSort
Entr´ees : Un tableau Tde ncl´es.
Sorties : Le tableau Ttri´e dans l’odre croissant.
Si n1,Retourner T1
Choisir un ´el´ement xde T(pivot).2
En comparant chaque autre ´el´ement de T`a x, former les sous-tableaux3
T(´el´ements x) et T>(´el´ements >x).
Trier Tet T>en utilisant QuickSort.4
Retourner T,x,T>.5
Propri´et´es :
IOp`ere uniquement sur la s´equence `a trier (tri sur place).
IPire cas : complexit´e quadratique.
Ex : si pivot est toujours le premier ´el´ement et le tableau est tri´e.
L’algorithme RandQuickSort
Une “solution” :
RandQuickSort
Entr´ees : Un tableau Tde ncl´es.
Sorties : Le tableau Ttri´e dans l’odre croissant.
Si n1,Retourner T1
Choisir un ´el´ement xde T(pivot) au hasard.2
En comparant chaque autre ´el´ement de T`a x, former les sous-tableaux3
T(´el´ements x) et T>(´el´ements >x).
Trier Tet T>en utilisant RandQuickSort.4
Retourner T,x,T>.5
Rappels de probabilit´es
(Cas des espaces finis ou d´enombrables.)
IUn espace de probabilit´es est un couple (Ω,P)o`u est un ensemble
et P: Ω R+une fonction telle que :
X
ω
P(ω)=1.
Pest appel´ee une fonction de probabilit´e.
IInterpretation : est l’ensemble des r´esultats ´el´ementaires d’une
experience non d´eterministe, chaque ´el´ement ωrepr´esente un
r´esultat “´el´ementaire” possible qui a une “chance” (probabilit´e)
P(ω)de se produire.
IExemple d’une experience : jeter un d´e (non-pip´e)
Ω = {1,2,3,4,5,6}.
P(1) = P(2) = . . . =P(6) = 1/6.
´
Ev´enements
IUn ´ev´enement est une partie Ade . Sa probabilit´e est :
P(A) = X
ωA
P(ω).
IInterpretation : un ´ev´enement est une r´eunion de tous les r´esultats
´el´ementaires correspondant `a une r´eponse positive `a une question
portant sur l’exp´erience et sa probabilit´e est la somme des
probabilit´es des ´ev´enements ´el´ementaires qui le composent.
IExemple (jet d’un d´e).
L’´ev´enement “le r´esultat est un nombre pair” : A={2,4,6}.
P(A)=1/2.
1 / 55 100%