Cours d`algorithmique
Transcription
Cours d`algorithmique
! $ %( &') &)' %( ( %&' ' *+), -'*%, & )' * .%,%&%-, * +-'*%, & )' / 0 1 %( ( '%, % -3 3 "" (2( * .-, &%-,, ! 3 3 # " 8 3 " 3 3 73 0 + 3 7 + 3 # 3 " 3 0 + 3 " + 3 3 ( 13 6 3 3 " 3 3# 73 ( " 35 4 " 5 3 .% )' !" # 3 " !3 # : +-'*%, & )' 3 3 ! 3 3 4 5 1" 95 3 ,& * " 3 &') &)' * 5 3 1-'*%, & )' " " 4 ( %(;( - - ! ,& ! # 3 " # ! & '% + 3 # 5 ! 3 5 " < 75 5 = # # 8 * '- *>* '- 95 " " ) ?=9( 3 " 33 5 " " 3 5! # " " + 3 5 35 " 4 !8 5 = " " : 5 " " 5 + 4 3 35 "@ ( ! + " % 3 " 3 " + 3 " )3 3 )3 3 !" # # 5 3 A 5 )3 3 "7 * ( % " 3 " 3 83 "7 " # + # 3 # " 3 # + 3$ 3 4" B5 # 3 3 : 9( ! 3 " 3 5 + 3 3 3 "7 " " -%' ' + " 3 " " 7 :: # 3 4 " " 3 + "@ " 3 5 3 $$ ( ## !" # ; -%' '+ 3 " " 3 " % " 3 & ' "" () *' + 3 + 3 3 3 " + "@ 4 35 + 3 5 3 3 ( 3 0 + 4 3 !# " + # ( " 3 " 3 3 + 3 % ;5 %C 33 D( ( 5 &>5 5" "5= 4 3 %8 % : "@ 9 $ , & & ' "@ " 3 + " 3 3 3 : @ 8 33 3 # 3 5 3 3 ) ?5 3 33 " 3 5=9( 33 "" " 5=9( +" 33 ) ?E 3 5 5 : %* + 3 3 8 33 : + : ! 5 * '# 5 +" # " 3 *>* '- = 3 3 33 4 3 " 3 ((( !" # C %%( -* %%( * ? )3 7 +%,.-' * ,) 3 " # & -& ( 3 " 3 3 "7 3 "7 "7 8 ! 9 3 ( " 3 K 4 73 3 K 4 ! F 5 5 5 ;5 C5 D5 E5 G5 H5 IJ( L L( - +& 3 , 3 3 "7 3 3 "7 9 4 " 9M & -& , G 3 3 "7 . *&( 3 4 " H ! K 4 ! 4 " 3 K 4 L!L( E 9 EM F 5 5 5 ;5 C5 D5 E5 GJ( L L( ?) E "7 F 5 5 5 ;5 C5 D5 E5 G5 H5 I5 5 ?5 5 *5 5 .J( ! %' 3 3 " 3 & 3 3 "7 3 3 "7 9 >- L7L( 9HMG & -& , F 5 J( 7 3 3 "7 9H 4 " ! '& 3 , 3 ID 9 MID & -& % 3 & 3 3 "7 9 4 " %%( ' &%-, 3 3 , &%-, " 3 3 3 3 " ! # 5 3 73 ( -3 7 73 ( 3 13 " # 4 -' + 33 " " !3 3 " : 37 : 7 3 # 373 ( 1 3" 3 7 3 ( 3 7 7 37 1 7 3 4 5 + 7 3 # 5 7 3 3 ( 8 N MC9 3 : 5 5 5 ( ( !" # D "" / ' ' 1 3 # 1 3 3 5 3 ! "% ' ) 3 " M C H7 (% " 8 9: M CP M 8 9: ; M C M G;GC H C )3 8& 9 : C M C M IID & @ 5 E GGGE ' &%-, ?%, %' +0 +( 3: & 1 - +& 3 3 "7 6 # +0 + 7 3 " 3 + 3# G 9 M & 3 CH DGE )3 %%(; O ' ' 8P 9 : )3 " %" " ((( ( )3 O % 13 : 3 7 73 3 3 : 3 " ! # 7 3 @ 0 ( 9 +0 + - +& 3: 73 3 3 "7 Q 3 1( " 73 3 ! & : 7 3 7 0 " 3 3 3 "7 73 5 33 3 3 "7 " 3 # 0 ( 4 " 9 M M R 9 E S R M EC S ; S D S R C S R ; S R S R S R S SCS S M !" # E %% )&(( ' + 1 3 373 "" : "K" 1 @ : # 1 3 " ? S? 3 3 ( " 5 3 7 : 3 : " 3 7 0 7 ( ' 3 4 " ; S ; S M E M %, & ' & ' + 3 73 " ! ( 3 # 7 : 3 0 T " " 5 3 3: # 3 7 07 ( ? ? ' : 7 3 4 " E S ; S M ; M %2 + - 3+ 3 3 3 "7 + : 3 "7 + : 3 "7 3 H7 5 3 ! 3 3 3 G 9 M G 9 M !" # G %3 3: 3 3 3 4 3 6 "" 3 ( 3 3 "7 3 3 ( " " 3 0 5 3 3: 7 3 "7 3 ( 4 " ' 3 3 ;9 ;9 M 9 3: S 3 35 3 B 3@ 3 33 B " ;9 M " 9 " " 3 0 3 5 ( -3 : 4 " + Q 3 8D 9 " 3 0 8; 9( S ( S -3 7 3 7 3 %%(C M8 -* 9( *) & U& 3 8 4 " 4 %%5 )3 3 @ ! # @ 4 3 =9( 4 " 4 / S? 2 3 %%( ED S C; ? EE # %%%( 4 ,-&%-, ! ! 33 ! 1 7 3 ! , 3 5 '- ' 3 3 3 3 / S? 2 % % &%-, " # 0 3 ! !" %% 7 @" 33 5 # 5 3 3 3 3 3 "" 5 3 !" # "" 35 7 @" ( -3 3 3 ! !" # H $ 5 : 3 "" 5 # 3 " 4 3 " !3 ( & 3 3 & 3 7 @" + 3 3 4 8 4 " 3 3 3 "3 33 3 0 " 1 3 "7 ! 3 3 3 3 3 !" # ! " 3# + 3 " !3 5 5 SS5V : =9( 3 + 3 $ 3 3 3 & $ & # 33 ( $ # 1 3 3 0 3 "" # !" 3 "" 3 $ 3 3 3 3 " !3 5 1 3 0 13 5 "" 3 3 3 " 73 3( " !3 ( 4 7 1 3 5 ( !" # I $ %&' -'%&$ %W) &%-, '- ' %( ,-&%-, %( * , -'%&$ %W) ' $ -'%&$ %W) 3 7 @" 5 3 3 * " ' + )3 " 3 !@ 3 # 33 : "3 3 0 1 8#9 + 3 " ! 3 ( ! 3 8 9( 3 ! 4 3 8#95 8 95 &> " 8&> M 33 9( 3 $& M 8 N#9( & 4 M 8 $& N &> 9 ' 8Y : ( $& S & 4 ( + 1 4 3 33 M ! 5 3 : 3 ! ( ( " 3 3 0 & 3 !" # 7 @" ( 3 : ! 4 ! !" ( 4 # " 33 33 X + : 3 7 @" "3 & 3 & !" 9 !" # 3 " 3 3 0 8 9( 3 5 " 3 3 3( ! # # 3 4 3 &> %( .-' *+), 3 %(; -'%&$ !" 3 " *-,, % & & ' 3 '4 3 () + ( ++ 33 3 3 3 "5 ,- % 0 3 33 33 3 + 33 "0 3 , % 7 : 8 E7 3 5 ' 8; 7 3 3 9 5 5 ! *-,, 33 : 3 3 " 3( * 3 9 : 3 5 # 3 ( *-,, 6 & "3 3 @ 3 3 3 * 3 33 " 3 !" ( 33 3 " + 3 % : 3 3 3 @ : 3 +3 3 : : Z " D 5 ( D 7 [MZ ; GEH 5 ; GEG [5 3 0 Z ( GD \;H 5 ;(C S;H[5 @ 3 ! 3 @ # # : 3 3 7 3 : 4 3 !" # > @ 3 @ . 3 4( ( 5 8 %%5 ),% -* =9 4 &> 3 ( , &)' * + : 7 3 3 : # 3 3 : 7 33 ! 3 " 3 3 &> 3 3 + 3 : 7 3 " & 4 " : : 7 ] : 7 5# * 33 3 3 3 "M: 4 " , 4 3 3 &> M ( '%&$ " 3 4 " 5= & ] &%W) & - %W) + + '4 # " 8 3 3 3 3 !@ 5=95 33 : 3 3 9 3 3 3 4 5 3 " M: ] !" @ ] 3 " M: 8S 5 5 N 5 5" ( : 3 3 + & '. 3 7 1 : 3 ( ' &%-, *+), *-,, 33 ] * 3 : 3 33 ] %-, !" 7 5 : 7 3 " 5 3 " 5= & U ' 3 3: 3 & 3 %(C )3 3 1 : 3 !" ( 3 ( * * 33 3 + 3 3 3 4 33 : 4 3 4 *-,, 3 # 3 3 " 3 " 3 ( 1 3 3 3 : 3 3 33 3 !" # 5: 7 3 3 ( 3 3 : ( 87N79 8CN N 9 ] "3 3 87 3 8 99 8 N 9 ] "@ 3 8 7S 3 8 99 8 N 9 ] 4 @" 3 ," * + 4 )3 + # 4 34 3 3 3 U^S7US M # # " " " 3 3 4 4 3 !" # " 0 + # 0 + 8_ 5 _M 5 ` 5 `M 5 _` 5 M 9( 4 " 8 S ;9 _ D( 4 )3 4 3 3 # # # " 3 : ' 4 " 8 MD %%( > > . . 4 > . 4 . . 4 1 .. + " 33 + 7 4 ! " #! ! 3 3 > 4 4 ) *'+ > . 4 4 . 4 > . . 4 > > . 4 . 4 > 8 M ;9 -) 8? _` C9 : : ? 3 : 0 3 : 7 8 33 9( : K + 3 + '( " " + " & &%-, 3# 3 ' ?M;9 %, &') &%-, * %%( " > 8 M ;9 & 8? _` C9 : %%( 3 8 &5 -)5 ,-,9( & 7 + 4 3 !" # # $% " " & '! $' " ( & '! '%&)' 3# " + ! 0 + 3 : + 3 33 3" ( !" # ; 3 4 3 * 5 * 5*;= 3 %%(; + 8* 5 * 5 *;5=9 33 : 7 3 3: ! 0 + 3 " 3: ! 0 + 3 : 3 " 5 13 : 3 7 81 5 13 3 19 ] 8 9] &)' 3 3 3 3# : 7 3 : # 13 " 1 3 3 " # " 3 ! ) 0 + : 5 33 : 3 K " 1 3 : # 1 3 : " 3 : 7 5 8 9] + 4 33 ( 3 # " 33 # + 3 3 0 + + 3 33 5 3 ! 3 33 ( " # * + ,- 0 , . / ) 1 23'/ 4 6 * . /5 54 + * 4 6 54 /5 + ,- *! + . ,- ! ) , ,- ( %%%( 4 56 4 , 7* 8 %%%( /5 &%-, : 3 . " 3 33 ! 3 3 0 4 3 3 ( &%-, % !" # C 3 3 " " ! 4 3 4 7 +3 3 3 : + 3 3( 3 4 3 3 3' ? ] ? ] , 3 ? 3 : 3 4 ? 5 3 3 1 0 5 3 4 ( 47 +3 3 ? )3 3 35 3 3 # 3 !" # 0 + 3 3 : 3 K : 3 K " 5 3 5 3 7 3( " 3 3 "7 ! ? 3 : 3 " ! 0 + 3 5 1 3 "7 " 0B 1 3 "7 1 3 "7 3 B 0B 5 1( ! 9 ) /4 4 5 : ; * < /5 6 = 12 4 5 4 5 79 5 = 9 5 = %%%( &%-, ' *)%& 3 3 4 3 " + 4 37 +3 3 3 : + 3 3 3( 3 3' !" # D ? ] 3 : , 3 %%%(; 3 4 ? 5 3 35 3 3 ? ( &%-, % ?'%W) 3 "7 # 3 5 3 3 !" # 0 + ! 0 + 3 35 : 0 +3 : 5 4 ! 4 3 3 " 3 + 3 33 ( * 3 : ( " 3 3 "7 ! # 3 3 " 3 1 3 "7 " ! 0 + 3 1 1 3 "7 3 " 3 "7 1 1 3 "7 3 "7 _ 5 ` 5 3 1( ! ) /4 4 5 : ; * < /5 6 = 12 4 5 5 = = >2 4 5 5 = 4 5 * 5 = = %%%(C $-%U * 3 3 : 3 "7 3 3 ! 4" ( 3 4 # ) &% "7 # 3 ( 5 3 5 7 " 0 + !" !" 5 3 " 4 5 # + 3 5 3 4 3 > ? ] !" # E > ? ] ======( , > , ? ' ? ,] ] # 3 !" # 3 3 3 " G : 5 ! 3 " 6 3 3( ! ? ) /4 4 5 % @5 6 = ; %/4 56 '/4 5, /4 5, #/4 5A B/4 5) C/4 5= @/4 5 /4 5 5 5 5 5 5 5 5 5 ; %%%(D .-, &%-, 2 - %W) 5 + ' + & ?' * ?-- ( 34 * .%,%&%-, ? 1 3 "7 ? M F 5 J( 3 )3 3 & 3 3 3 4 # 3 " 3 : # # 3 3 0 1 3 .-, &%-, * ? $ " : ,-, ?3 3 F>' %5 . )UJ( 3 "7 3 ?( 3 7 ( & \ -) % ' " ' " '( " ) *'+ !" # G ' " 3 '!" '( " 3 '-" ) *'+ 3 4 " 8 5 75 5 9M + . 8 5 75 9M S7S + )&' + .-, &%-, )&% & $ " U-' 7 M 2" & 3 - • . + . ⊕7 + ,-' 7 M $DE . • 1 DE % ⊕7 ( '- '% & * + ?' * ?-- $ $ ( 2 1 4 3 % 1 ( % 1 % 4 3 2 1 2 ( ( ( ( S7 1 * F * 1 % 1 ( ( 1 ( 0 ( 1 ( + 7 4 " ; ( M 8 S79(8 S 9 * ; * 3 4 S 4 . 8 5 75 5 9M 7 : 3 1 3 1 2 3 1 3 1 1 87S 9M 7 S M 4 S M ] . 845 5 B9M 4 S 4 S 4 S 4 ! " M 4 !" # H '@ 4 " " " S 7 S 7 " 3 S S 7 # M 7 M 8 S 7 S 7 S 7# 9 S 7 M S 7 !" # I %>( %& ' &%-, )3 3 3 $ # 3 1 ?-) 0 6+'&* 3 " 3 3 " 3( 33 3 3 0 + 3 1 3 3 1 3 ( & ,& W) /')/ 0& * 3 ? 3 # ( 3 %>( 1 3+ ,' 1 ] , ) /0 1 3 3 3 1 4 _? ` 3 31 4 0 " " 5 : 3 3 1 ( _? `B 3 5 1 # 3 3 1 4 K 3 # : 5 K ( & 4 * 3 7 1 4 3 5 0 " 3 4 : 3 3 : 3 K 3 5 1 # 3 3 3 3 _? `# " * ' 4 37 +3 ) 3 3 53 : /4 GG3 4 54 * 6 % + >1 (% H GG !" # 3 3 : 3 ( % 0 % K ( "@ 7 3 /5 : 3 3( 3 %>( ?-) ' & ' = V) W)1 7 3 # + 3: 37 3 1 K 3 3( 0" 6+'&* 1 $ ? 2 ] 34 * 3 # 3 1 3 0"" 3 : 5 7 1 K 5 3 3 4 ? ( & 4 * 3 7 3 5 3 1 K( : 3 % 0"% K +5 " 3 3 3 4 _? " 3 `# " 3 : 3 : 3 3( * 3 ) + 3 6 # +0 I ; + 3 : 3 : ] / GG33 E * 4 J /I 6 GGGG33 A + 57 %>(; >2 ?-) -)' 4 0% " " 3 3 1 3 " 3 3 3 "7 ( 6+'&* (&1 >? 6 > 4 > 7 ' > 8 ,' 1 ? ] , -Q >? 3 : > : > : 7 3 3 3 @ 5# 0 # 0 # !" # >? " 3 "7 3 " 3 >?5 5 3 7 5 1 : 3 > 0%" : 5 1 : # 1 3 6 0 >? 0 ! # # 1 3 33 a 3 " 3( & 4 7 -)' : K : 3 3 "7 : 7 3 5 ( 0%% * "" ) 3 0 3 3 "7 3 =/4 4 54 /5 6 =2 F '7 F ' ==( H 4 I * !" # '7I : /: 3 3 _? 3 ` 1 : 3 ( 0 >( & ? >( & ? 0 ( 5+' + )3 7 )U & -%,& )' )U ), 3 3 "7 3 : 3 " 0 " ( *% 7 , %-, "K" 8 3 5 3 3 "K" 3 "5 3 9( & &' + ! 3 / . ) & 7 &8 9 9 3 & 7 , 0 3 3 " 3 ] % 3 7 3 3 3 4 : 3 & : 9 + 3 7 ! ( 3 8E 9 ] : , Z [ " , Z [ 4 @" 3 "/ 3 3 : 7 3 @ ( 3 ( +' () + '&8 3 *:%+ / $ 5 7 0 % " 3 7 96 9/ . + 3 3 ) 7 3 3 3 0, 5 " 3 7 " 3 3 " , 7 7 38 ( 5 7 5 =======(( , 0 , ZDI[ 3 " 3 ( 5 &' + ( 7 +' () + '&- ( & 3 3 3 UM; & 7 &8 -3 " U9 3 3 ] ]8 3 " 3 3 + 3 7 7 3 ' .. &Z [ F && ; 9( & &%-, * %7, $ K "%L 2 * && * 2 !" # ; ' 4 54 6 /5 K, $"%L F &&6 %7, $ 54 : K "%L 4 6 * &)' 5 5 /5 && 0 2 +' () + '&" 3 + 3 7 & (&+ + * : 3 K + 3 4 3 3 ( 4 " " &Z [S &Z [S &Z [ ] -3 " " 3 8&Z [ _&Z [9 >( 3 3 * )U *% 7 0 3 3 33 8 3 : 3 0" -3 )U 33 ( " 3 : 7 3 " " " 4 @" " 3( , %-, 3 0 3 3" ! " 8 3 "" 7 =(( & ? 3 # 3" ! " 95 3 # : 7 7 0 # + 3 4 ! " " 3 3 3 3 3 50 5 9( & &' + ! 3 7 0 4 " 3 3 3 3 3 3 ; 33 5 3 3 4 : 3 / . ) & 7 &8 " 3 96 9/ . 98; 9 3 + 3 0"" ] % 7 8 : 3 8 33 33 : 3 7 7 3 3 & &( 9 + 3 9 3 0 7 3 +' () + '&" 3 & 7 3 *:%+*;%+ / $ 5 5 : 3 "/ 3 + 0 4 ! ( 3 3 3 3 ; 33 ( 3 " 7 ( *( 7 3 + " 3 3 3 : " 3 3 : 3 3 3 "7 0 5 3 3 3 "7 ( 8 98;9 ] Z [Z [ Z [Z [ Z [Z [ Z [Z [ Z [Z [ Z [Z [ !" # C 0"% ( 5 &' + ( +' () + '&- & &( *( + + 3 3 3 M; 5 M & 7 &8 98 9 -3 " 3 3 ] ]8 3 " 3 3 + 3 7 ; 7 F 33 9( 3 ' .. &Z [Z [ 3 & &%-, && * * J %76 F ? %70 K "%LK?"%L 2 * * && * ' 4 54 2 &)' /5 6 K6"%LK0"%L F %76 F ? &&6 J %70 4 54 : 6 K "%LK?"%L 5 5 5 ? 5 /5 * * && 0", +' () + '&" 3 + 3 7 & &( *( : 3 K + + (&+ 3 4 + * 3 + 3 ( " &Z [Z [S &Z [Z [S &Z [Z [ ] -3 " 3 : 7 8&Z [Z [ _&Z [Z [9 -3 " "" " " 3 "@ 3 7 =(( " 4 @" " 3 "@ 3 ( !" # D >(; -%,& )' )3 3 , 3 : , 7 # " 3 0% ( & &' + (/ + N , "b 3 N ] ! b 3 3 1 3 : 7 1 3 33 ( % @" ( +' 3 3 3 " 3 3 3 : 3 ] N ] 3 0%" &' 7 '8 1 <" 1 = " 3 1 " " 3 + 3 & : : 3 3 : : 3 7 3 " 3 3 1 7 3 " 3 3 + @ : 1 7 3 3 3 7 ( : 7 3 ( 0%% +'& @ &' + (/ + : +' 3 3 3 3 5 3 " 3 0 13 # + 3 : 3 ( 3 " " 3 3 : 7 4 3 3 3 : ( > '% ? * 3 3 # 3 3 M c3 "b b b: 7 b U% & ,& : 7 3# 3( +3 3 3 " : 3 , "b 3 b 3 3 ] M ] 3 N ] Mc ] 3 N M ;] " 3 3 3( 0%, 3" +' 3 5 3 : 4 7 : ' '&- 3 4 3 ; 3 7 7 : 7 3 (0 ( : ;0 & * 3 @ K 3 4 " & ? 3 " 1 3 : 3 1 7 4 0 1 )U 3 3 ), *% 3 " ( 3 5 ! # 3 : ( , %-, " 3( 3 + " !" # E 3 3 : 3 3 /7>%85 3 c&Z [ & 3 3 "K" ( : 3 '7>%85 = 5 13 3 ? '5 3 3 3 3 5 1 0 7 " S 3 S 3 + 3 3 3 N # : " 3 4 @" 0 " . " 3 7 ' 5 Z [5 " 3 " 3 ? <'7%85@@ $ Z [( 3 3 7 " 3 ( ( 0 ( S MM c Z [( Z [5 N8 S 9 3 3 3 Z [( 3 " 3 N8 S 9 3 3 3 Z [( ( 0 ( N8 S 9 MM Z [( !" # G %3 3 )&% % &%-, * )3 7 7 # " "" ?%? %-&$ W) !@# 3 3 3 3 3 "7 ! 3 + 3 3 "7 + 76 3 !" 5 3 3 3 # + 3 3 3 3 3 "5 # 33 3 3 3( .-, &%-, )3 + 3 : 3 3 " 3 3 3 3 3 0 + 3 " 3 # 3 3 " ( 3 ( !" # H