You are on page 1of 6

P >o g r a n i n i a1io n FOÄ io m · Hc Av Bme c

l Bt t t t r a p a g o 2 0 14 / 2 0 15
M a s t e r h úor m a t iq u e h r bA H u t G a h l c P m i s 13
G ' l a n z o n e t t o c t ] Y ' lo yc n

'
Oca l t do ts dc >p a u t o r i x e/ s
Tr a n spa re n ts du co u rs sy n t a x e i d éa l i s e m c c u 1n e u

17 / 0 6 / 2 0 15 , D u r e 3 11
L e b a r ë 1-n c es t do n n é t it r e i n d ic a t if

To u te r ép o n se d o it ët r e ju s t i fi é e

f r éf r e n c e a u s o u s la n g a g e n o n
typ d c ML i n t r o d u i t e n
C o n v e n t io n s Lo rsqu o n p a r l e r a d e Mi n i ML , o n e r a f 1x
r a t e u r d c p o i n t :i x e
'
i l
co u rs a v ec co n s t a n t es po u r le s E n t i e r s e t ]e s B o o l é e n s , Ic s o p é r a t e u r s d e b a s e Æ s o c s , o p
e t ! in s t r u c t io n if th e n e ls e
c t y p a ge
gi t de la v e r s io n a v e
' '

t y p ée d e Mi i M p é c i fi e r a
s to u jo u rs s il s a
v e r s io n o n
'
Lo r squ o n p a r le r a une n

s id r e i n t t bo l co m m e ty p es de b as e L e s o p ér a t e u r s
m o n o m or p he ou p o ly m o r p he Au n iv e a u des t y p es , o n co n e o

t p r é fi x n i a is o n t i lis e r a la t a t io n i n fi x e c o m m e S U C RE y n t a x i q u e
s
+ . ,
*
, / ,
< - > ll && so n t t r a i t és c o m m e ét a n es ,
u n o

Pa r éc r i r e 4 + 3 la p la c e d e + (4 , 3 ) et o n co n s i d é r e r a T C (+ ) -
(i n t x i n t ) + i n t
ex em p le o n po u r r a

I m o r t a n t ! L e c o n t r ö le es t d iv is é e n t r o i s p a r t i e s i n d ép e n d a n tes
p

p r e m i r e p a r t ie

Sém a n t iqu e O p ér a t io n n e lle (6 p o in t s + 1 de b o n u s

t i l is a la sém a n t iq u à gr d s p a s d e Mi n i ML , d o n n er une dér i v a t io n de


9 1 En u n t e an

1 Ie t E - 2 in if Æ - 3 t he n 6 e ls e (f u n y + 4) t r u e - 4,

2 Ie t f = fu n Æ + (f s t T )+ 1 in f (t r u e ,
3) - e r r ,

u n e v a le u r t i li s e r l a n o t a t io n v u po u r i n d iq u er qu e v v
L o r squ e v est ,
v ou s p o u v ez u

t iq u à p e t it s pas éd u i r e t a t qu p o s s i b l e le s e x p r e s s io n
e s su iv a n t Da n s le ca s d'u n e
0 2 En u t i lis a n t la s m a n e ,
r n

do n le s d i x p r e m i é t a p e s d e ]a r éd u c t i o n
q u i r é d u i t i n d é fi n i m t res
p r e s s io
ex n en ,
n er

1 {i x (f u n f + fu n Æ + if z - O t he n 3 e ls e f (ï 1 )) 1 ,

(f u d (z y )) 4 ) (f s t ( f l 4 ))
2 (f u n = + n y + sn ,
a s e ,

Je u x de r é fl e x io n (B o n u s )
p u i s q u i l p e r m e t d e d ém o n t r e r q u e l e s p r o g r
'
Le r a is o n n e m e n t pa r i n d u c t io n es t cen t r a l e n in fo r m a t iq u e ,
a m m es
'

éc i fs so n t co r r ec t s e t c a lc u l e n t b ie n l e r és u l t a t a tten du I l fa u t p a r c o n t r e fa i r e a t t e n t i o n p u i s q u e c e s t t r s fa c i le
r u rs
"
fa ir e d e s erreu rs de r a is o n n e m e n t Co n s idér e z pa r ex em p l e le h é o r
'
me su iv a n t

T h éo r m e To u t e lis t e ¢ =
[a i ; ;ak ] n e c o n t ie n t qu e d e s é lém en t s i d e n t iq u e s (c '
est à d ir e a 1 - ' a k )
P r e u v e P a r i n d u c t io n s u r l a l o n g u e u r k d e l a l i s t e e
Si k = 0 a lo r s e s t ] a l i s t e v i d e l] d o n c l a p r o p r i é t é est t r i v i a le m e n t v r a ie

Si k = 1, a lo r s 1 es t la l is t e q u i c o n t ie n t u n se u l e le m e n t [a i ] w i e s t ég a l à l u i m êm e
'
So i t k > 1 L a lis t e [a i ; ; a k r ] a lo n gu eu r k 1, d o n c p a r hy p o t h ë s e d i n d u c t i o n t o u s s e s é l é m e n t s s o n t
id e n t iq u e s : a 1 - a 2 - ' a k 1 A u ssi la lis t e [a 2 ; ;a k ] a lo n g u e u r k 1, d o n c p a r hy p o t h s e i n d u c t io n
t o u s s e s él m en t s s o n t ide n t iq u e s : a 2 - ' ak 1 - a k M a i s le s e le m e n t s a 2 , ,
a k 1 so n t en c o m m u T1 e n t r e

le s d e u x lió t e s , d o n c o n p e u t c o n c lu re qu e a l - a k en u t i l i s a n t l a t r a n s i t iv i t é d e la r e la t io n
'
.
'
k
C e t h éo r '
m e
"
es t c la i r em en t fa u x ,
u n con t r æ ex ein p le é t a n t l a l i s t e [1 ; 2 ; 3 ; 4 ; 5 ] , d o n c sa
"
preuv e
'
d o i t ê t r e fa u sse

E x p l iq u e r en qu o i c o n s is
'
te I er r e u r dc r a is o n n e m e n t

Scanned by CamScanner
t ie
e u x l
P
D
i n es
o TP f1 e
Tî 1 o n o m
ge

13, i ß
° typ a
Z
: ML av ec
en M: n

iX
1ì T X= / ) z

e c o m m
e ty p e p r
i n c ip a l

: . "
X X x . .

e ex p r e ss
io n d e M: n : ML a ya n
t c e ty p

t do n n er u n
de t y p e s u iv a n
h ém as 1 X a x +n t
des sc » b o o
o u r c ha
c u n
Q2 p 4 a » : n t
> P) » P
1 3 a > (a + a
i n t ) + bo o

+ p + a
2 (b o o l x
1 a
s u it
d é fi n i e c o m m e
de typ es
tr e s c h ém as
d ' i n s t a n t i a ci o n
en
t io ( ¥n
r e la
r a p p ìe q u
e [ es t Ia n
- .
/
[T 1 / a l ,
T n

Ri n t e l s q
o u e T
Q3 n
t es 7 11
t s il y a des y p
'
'
s i e t s e u le m e n
t i l i s ée
° T
Va ct n T
l ,
bst it u t io n u
t la
p l ic i t a
,
n su
i a n t es so n t v a lid e s , en ex
i s t a n t ia t io n s s u v
D i r e l e s q u e l le s d e s n
t ilis a n t la su bs t it u t io n [b o o 1 / a 】
1 e s t v a lid e e n u
E x e m p le v a a [ b o o
< b o o 1 > bo o l
Va a + a
十 主n t 十 : n t
Va ß 仓 争 芦 く : n t

Vo 芦卢 + ß 二
争o く : n t 手 ( 主n
bo
t
1
手 立n t

> i n t
手 b o o 1)

[ bo 1 + o
Va (a + a ) + +n t o

fu 3 in ( (f t r u e t + (f 2 )) : n t e n u t i lis a n t Mi n i ML a v e c ty p a ge
Q4 Don n er u n e d é r i v a t i o n d e 0 l 1e t f = n £ >

(v o i r ge 1)
" "
t a t io i n fi x I '
p ér te + c o n v e n t io n s a
o t e r q u o n u t ili s e i c i la p
À '
n o n e po u r o a u r
p o ly m o rp he n ,

Scanned by CamScanner
n o is i m e t ie
p a r

P r o gr a m m a t io n (7 p o in t s + 3 B o n u s )
In t r o d u c t io n

Un rl r t1 T e Bj / n ir
a e e r ec he r c h e ( A B R
p r u p i t
r
sui v ar 】 :
s ) es t u n a r br e bin a ir e do n t ha q u e
c n o eu d in t e r n e est t iq u e té e t qu i v é r i fi e l e s
C h a t Bu e
t i cBrJct t c n
'
se n tc es t pr
To us l( q u u n e s e u l e fo i s d a n s 1 a r b '
s n (P u d s d u s o1ar br e r e
To If g u c he o n t l I n e ét i u e t t e l
a
us s n o m d s d u AIo u s a r b q p u s p e t it e q u e c e lle de la r a c i n e
r e dr o it o n t
u n e ét i u e t t e l
q p u s gr a n de q u e c e lle de la r a c i n e

(r n t ie r R f l. Rr l a is p o
.
u r c Bu o i p as c ha in es de c a r ac t
ORD E R t ì ü r es o u l is t e s i d é fi n i dr e dessu
n n e e n a n n ex e
p o u r ]e s t y p es o
s o n a u n o r s ) o n d is p o se d'u n e sign a t u r e
r do n n és e t o n v a éc r i r e fo le s
u n n c t eu r po u r a r br es bin a ir e s de r ec her che

Q2 Da n s u n A BR, o ù se t r o u v e le p l u s p e t it élém en t ?

9 3 Do n n er u n A BR .
d i ff é r e n t d e c i dess u s qu i co n t i e n t l e 5 é lé m e n t s 1, 3 4, 5, 8 e t 9 (e t a u c u n a u tre 1é m en t )

Sig n a t u r e (1 ,
5 p o in t s )
On cr i t ic i u n e s ig n a t u re p a r t ie l le q u i n e co n t ie n d r a p as t o u t e s l e s fo n c t io n s éc r i t es pa r la su it e
Un rn o d u le p o u r g rer le s A B R d o i t c o n t e n ir
D e u x t y p e s (a b s t r a i t s ) p o u r l e s élém en ts e t le s a r br e s
U n e e x c e p t io n p o u r le c a s d e >a r br e v ide
Un e fo n c t io n m i n e l t qu i r e n v o ie le p l u s p e t i t é l ém en
'
t d u n ABR

Q4 Éc r i r e u n e s ig n a tu re ABR p o u r ]e s A B R

9 5 D e ss in er I' a r br e re p r és e n t é p a r l a v a l e u r C a m l
No d e ( 5 ,
N o d e ( 3 , No d e ( 1 , L e a f , L e a f ) . L e a f ) . No d e ( 8 , L e a f ,
Le a f ))

Q6 Éc r i r e u n e s ig n a t u r e p o u r l e s fo n c t e u r s q u i p r e n n en t u n ORD ER e t r e n v o ie n t u n AB R P e n se r au w i t h t ype

I m p lé m e n t a t io n

B as e s (1 p o in t )

9 7 Éc r i r e u n fo n c te u r qu i pren d u n ORDE R e t r e n v o ie u n AB R L e t y p e d e s A B R est do n n en an n ex e

I n se r t io n ,
s u ppr e s s io n (1 + 1 p o in t s )

08 Éc r i r e u n e fo n c t io n a dd e l t > t > t qu i ra jo u te u n élém en t da n s u n ABR


' '
I n d i c a t io t l : i l fa u t rem p la c e r I u n e d e s f e u i l l e s p a r I l ém en t à i n s ér er ,
et do n c i l fa u t t r o u v er l a fe u i l l e à rem p la c e r

Scanned by CamScanner
Q9 (a t t e n t i o 1é m en
'
t d u n ABR
d i f fi c i l e ! ) (b o qu i r et ir e u
n , > t n
I n d ic a t io
n u s ) c r ir e u n e fo n c t i o n r emo v e e 1t > t
b r e d r o i 七 (1e
si 1' l é m l e p l u s p e t i t é l ém e n t d u so u s a r
n t
en a 2 so u s a r br e s n o n v i de s , il fa u t che r c he r
s tl c c e s s e t
w ) r em p l a c e r > él ém en t à p p r im s u p p r i m e r r éc u r s i v e m
e n t le su c c esseu r
p u is
,
su er par so n su c c e sse u r

I t ér a t e u r s
, p a r c o u r s (2 ,
5 + 2 p o in t s )

Q1o Éc r i r e u n e fo t io '
br e
n c n ma p te l t > l t ) fo n c t i o n à c h a q u él é m en t d u n ar
e > t > t qu i a p p liq u e u ne e

9 11 (b o n u s ) L e r és u l t a t d e ma p est il t o u jo u r s u n A B R ? p o u r qu o i ? c o m m en t ga r an t ir q u e le r és u l t a t est u n ABR ?

Fo n c t io n e x i s t s (e 1t > b o o 1) > t > bo o 1 qu i t e st e si il e x ist e u n él ém en t da n s 1' a r b r e q u i


v é r i fi e l e p r é d i c a t

Q1 3 (b o n u s ) Q u e fa u t i l d i fi e r p o u
m o r o bt e n ir u n e fo n c t i o n f
p r éd i c a t ?
or a l l qu i t est e si tou s l e s él é m en ts v é r i fi e n t u n

Q14 Éc r i r e u n e fo n c t i o n e l e m e n t s c > l t 1j l a l is t e d e s él é m
e s t qu i r en v o ie en t s de >a r br e en su iv an t
Pa r co u r s en pr o f o n d e u r Qu e l l e e s t l a , u n
p r o p r i ét de ce t t e lis t e ? p o u r qu o i ?

Q15 (b o n u s ) É c r i r e u n e fo n c t io n f l i
o s t il t 1j t
la l is t e
e s > t qu i r e n v o ie u n ar br e co n ten t t l e s él é m t s de
(u t i l i s e r L i s t F o l d r : gh t ou Li s t Fo l d 1e f t )
an o u s en

Q16 c r ir e u n e fo n c t io n f o l d ( e 1t > l
a > a > )
a ) > l
a > t > a L a fo n c t i o n p a s s
)
e en t
est a p p l i q u ée su r la r a c in e d e 1' a r b r e e t le s és u l t a t s d e f l d
ar gu m en
r o su r cha qu e s o u s ar br e L e deu x ì m e a r u
de bas e p o u r le s ar br e s ide s g m en t e sc le cas
v

Q1 7 (b o n u s ) À 1' a i d e d e f o l d, r éé c r i r e e x i s t s ,
f or a l l ,
e l e me n t s

Scanned by CamScanner
A n n e x e

a t u r e e t typ e
§ i g Jr
du l e t ype ORD E R =
1a o

s :g
t ype t

t ype c o mp Sm a n I Eq u a / I La r ge
v a l c m p t > t > c o mp
(* c mp × y r e n v o i e Sm a l l s i x e s t pl u s pet i t qu e y
Equ a l s i x e t s on t é Ba u
y x
L a r ge i
s x e s t pl u s gr a n d qu e y * )
e n d

t yp e t = Le a f I No d e o f e l t * t · t

Fo n c t io n s u t ile s

Qu e l q u e s fo n c t io n sCa m l q u i p e u v en t se r v ir (o u p as )
l l , && : o u l o g iq u e , e t lo g i q u e
Ra n d o m I n t n r en v o ie u n n o m br e a l éa t o i r e en t r e O et n 1 (i n c l u s )
g u e u r d u n e li s t e
'
Li s t I e n g t h lo n

H d , L i s t T 1 t êt e e t q u e u e d u n e l is t e
'
Li s t
Li s t N t h 1 n r e n v o i e l e r Ai è m e l é m e n t d e 1 (o po u r l e p r e m i e r él é m en t )
し+ s t R e v r e n v e r se u n e lis t e
Li s t A pp e n d co n ca t n e de u x l is t e s
t de 1 e t r e n v o ie l a l is t e d e s r és u l t a t s
f à ha qu él ém
p f 1 a p pliq u e c e en
Li s t Ma
)
L: s t FO l d l e f t f a [b 1
ie f 1 (f 2 ( (f an b ) ))
] b a a

ïk
' an ren v o

: ì :: : :
'
d , . Ie t
,

. . s i il ex is t e u n 1é m en t de ;q u i é r i fi e l e p r d i c a t
v
.
d ic a t P e u t l e v e r No t f o u n d
le p r e m i e r él é m t qu i v é r i fi e l e p r
L: s t F: n d pr e d 1 r e n v o ie en

Scanned by CamScanner
Sé m a n t iq u e o p r a t io n n e lle à g r a n ds pas

a l u 1 o 2 - u2 a (u l ,
U2 ) . - (t !
1 . Tl 2 )
e c o p -
0 (f u n r u ) - (f u n z + a ) (a . .
o 2 ) - (o 1 ,
t l2 ) fs t a Z' l sn d a - " 2

n l - (f u n ) a2l u1/ ]
z + r1 0 2 w o 2 u [u 2 / a 】 - T a ] o 1 u ] n
'
es t n i fu n r + a n i op a t U l - "
a ] o 2 » r
a 】a 2 e?r le t = - a l in o 2 r
a 1 + a 2 - '
0 2 u 2 I 】c s t p a= u n
pa ir e d
'
e en t ie r s
(1 l n 2 - er r
(c t Ie s r g le s s im i la i r e s p o u r lo s a u tr es o p ér a t e u rs )
Di k .
-
a l a z
A 2 -

er ?
er ?

(a
a 】e r r a l - u l a 2 e r r a 1 e r r
in
-
] ,
{t2 ) - er r ( tz ] ,
o 2 ) - er r le t - o 1 a ~ - ¬r r
1 【i - U
'
u ll c s t p a s u rl bo o l {<t '
n a 11 c s t
'
t pm i u n c pa ir e
tl
p a ir e
_ u pas u lle a - u u n cs
if t1 l t he n u z e ls e ( [x - er ? fs t a - er r sn d a - er r
a 1 W er r
a l - t r u e Q| a l - f a l s e a A ?
' w u 1n u r 1A - er r if 1 1 t r u e 1 1 r a l s e
(i l t he n 6 12 e 1s e a _ if o 1 t he n a 2 e ls e a a - T

Sé m t iq u
a n e o p ér a t io n n e lle à p e t it s p a s
A x iu r r 1e s

¯ u n Æ · .. ; . WH m

u | (H u r L)
ir t r u e t ho r1 u l e ls e ï
o 2 , n l (i j r )
if f a l e e t l 1e n I1 l c lu e n z n 2 (i J ) .

r B' R Jf H (> x f Tnpl t s)


Tt l B ?i 2
(t ++ )
ïi x (I u 11 Æ > ) l ( n × ( f 1u Uil
tt þ H 1 a + M ) )/ R ] , '
( r J 11l Fx 1 ï ¢ j '
{ v B1 l l l n 1 i f Br l :

T y p Br g o 1n o t 1o m o r p ho

1 r I 91 J W F I I 77
, r r ún 11N ° I I q 1 1 rj 1J t w
1. r ; 7 ï 1 rA : T z I I rl l : ? i > T2 1 t u 1 : T I I 1 1 B
(l u l i ) n 1 : T l B: : r l ¢1 1 : n1
1 B ru n r: , o : / i þ 11 1 1 n l n 1 : T1
(r Bp p ) Ur t )
l 1n t B in ¢I J : r1

'
>Yp n w M y m o >p h n

/ ( lllx ) '
Vt 1 (t 1 I
(l r H IH i l rn ï ) (t i l t \ m l )
1 þ r 1 ) Þ n r r : T , I r 1p : T

B ó UD 1 r M
Uw m hnr yu
h '
h H H
'
I » 1u l a TJ
1 I t JI : t o o l 1 ) Bl j : T 1 1 I I :1 : T

I H '
n l tho n e hm W >
B H 1 H

Scanned by CamScanner

You might also like