[PDF] Cours dAlgorithmique et structures de données 1





Previous PDF Next PDF



Exercices avec Solutions

Les Structures de Contrôle (Conditionnelles – Itératives). Exercices Corrigés d'Algorithmique – 1ére Année MI 5. EXERCICE 1. Ecrire un algorithme qui 





Cours SGBD 1 Concepts et langages des Bases de Données

IUT de Nice - Cours SGBD1. 2. Plan. Chapitre 1. Introduction générale. Chapitre 2. Le modèle relationnel ensemble structuré de données apparentées qui.



Cours dAlgorithmique et structures de données 1

29 Jan 2012 2.6 Exercices . ... 8 Sujets d'examens. 93. Références. 137. 2 ... Durant ce cours on va utiliser un langage algorithmique pour la ...



cours-python.pdf

22 Mar 2018 Le cours est disponible en version HTML 2 et PDF 3. ... Une liste est une structure de données qui contient une série de valeurs.



DII - Plan du cours INF4063 - UQO

13 Sept 2021 2. Objectifs spécifiques du cours : • Introduire l'étudiant(e) à ... structures de données en fonction de l'efficacité d'algorithme.



INF3105 - Structures de données et algorithmes

3 Sept 2020 Collections et les structures de données nécessaires à leurs ... Ce cours comporte une séance obligatoire de laboratoire (2 heures).



Algorithmes et structures de données génériques

ALGORITHMES. ET STRUCTURES DE. DONNÉES GÉNÉRIQUES. Cours et exercices corrigés en langage C. Michel Divay. Professeur à l'université Rennes 1. 2e édition.



SECTION DE MATHÉMATIQUES

Ce cours a pour but d'introduire les techniques importantes du calcul scientifique et d'en analyser les algorithmes. Contenu. 1. Intégration numérique. 2.



SUJET + CORRIGE

17 Dec 2010 UE : Algorithmes et structures de données. Épreuve : Examen ... Définition 2 Un arbre binaire A de hauteur h est presque parfait lorsque :.

UniversitŽMohamedKhider-Bisk ra

FacultŽdesSciencesExact esetdesSc iencesdelaNatureetdel aVie

DŽpartementdÕInformatique

2 `eme annŽeLMD

CoursdÕAlgorith miqueetstructures

dedonnŽe s1

ChargŽducours:Dr. Abdelh amidDJEFFAL

AnnŽeUnivers itaire2012/2013

Sommaire

1Introduction3

1.2Notiond Õalgorithme...............................4

1.3Langageal gorithmiqueutilisŽ ..........................5

2Com plexitŽdesalgorithmes7

2.1Introd uction....................................7

2.2O-notation .....................................7

2.4Complexi tŽdesalgorithmesrŽcursifs......................13

2.5Typesd ecomplexitŽalg orithm ique.......................14

2.6Exercices .....................................15

3StructuressŽquentielles20

3.1Leslist eslinŽai rescha"nŽesaLLCg........................20

3.2Lespiles astack sg.................................26

3.3LesFil esdÕatt enteaQueuesg...........................34

4StructuresHiŽrarchiques45

4.1Lesarb res.....................................45

4.2Lesarbr esbinai resderecherche.........................56

4.3Lestas aHeapsg ..................................63

5StructuresenTables69

5.1Introd uction....................................69

1

5.3Tablet riŽe.....................................70

5.4Hachag eaHashCodingg..............................70

6Lesgraphes75

6.1Introd uction....................................75

6.2DŽÞnit ions.....................................75

6.3ReprŽsent ationdesgraphes...........................78

6.4Parcou rsdegraphes...............................80

6.5Plusco urtcheminaalg orithmedeDi jkstrag..................83

7PreuvedÕalgorithmes86

7.1Introd uction....................................86

7.2MŽthod edepreuvedÕalgorit hme........................86

7.3Outil sdepreuvedÕalgorith meaLo giquedeHoareg...............88

7.4Exemple ......................................91

7.5Conclusi on.....................................92

8SujetsdÕexamens93

RŽfŽrences137

2

Chapitre1

Introduction

deprŽpa ration.NÕayantaucunecapacitŽdÕinvent ion,lÕordinateurnepeut ene B etqu ÕexŽ- cuterlesordr esquilu isontfournispar lÕintermŽdi airedÕun programme.Ceder nierdoit IlsÕag itdedŽterminertoutesl esinform ationsdisponiblesetla formedesrŽsultats dŽsirŽs. Elleconsisteˆ trouverlemoyendepasserd esdo nnŽesauxrŽsultats.Da nscertai ns

casonpeu ttream enŽˆfaireu neŽtudethŽo rique.LerŽsul ta tdelՎtapedÕa nalyse

oOnappelle algorithmeunesuit eÞniedÕinstructionsindiquantde faonunique lÕordredanslequeldoitt ree B ectuŽunensem bledÕo pŽrationspourrŽsoud retous etpa rconsŽquenti lestimpossiblededonner lÕalgo rithm ecorrespondant. ÐEtape3:EcrituredÕunalgorithm eavecunlanga gededescriptionalgorithmique UnefoisquÕ ontrouvel emoyendepasserde sdonnŽesauxrŽsultats ,ilfaut tre capablederŽdigeruneso lutio nclaireetnonambig u‘.Commeil estimpossibledele 3 faireenlangage nat urel,lÕexistencedÕunlang agealgorithmiquesÕim pose. ÐEtape4:TraductiondelÕalgorithmedan sunlan gagedeprogrammation LesŽtap es1,2et3sefonts ansler ecou rsˆ lam achine. Sionveutren drelÕalgo- rithmeconcretouprati que,ilfaudrait letra duiredansunlangagedepro gramma tion. Nousdironsal orsquÕunprogramme estunalgorithmeex primŽdansunlan gagede programmation.

ÐEtape5:Miseaupoin tdu programme

1.Lamach inecorrigelÕorthograp he,cÕestcequÕonappelles yntaxedanslejargon

delapr ogrammation.

2.Lamac hinetraduitlesensexprim Žparleprogramme.

SilesrŽs ultats obtenussontceuxattendus,lam iseaupointduprogr ammesetermine. Sinou snÕobtenonspa sderŽsultats,ondiraquÕilyaex istencedeser reursde logique. Leprog rammesoitnedonneaucunrŽsulta t,soitdesrŽsul tatsi nattendussoitdes rŽsultatspartiels.Danscecas ,ilfautrevoirenprioritŽsi lÕalgorithme aŽtŽ bien traduit,ouencoreest-cequÕil yaeuune bonneanalys e.

1.2Notion dÕalgorithme

1.2.1DŽÞn ition

Onpeutd ŽÞnirunalg orithmecommesu it:

Ouencor e:

UnesŽ quencedepasdecalculqui prendun ensembledevaleurscommeentr Žeainputg et produitunensembledevaleurscomme sortieaoutputg.

1.2.2PropriŽtŽs

OnpeutŽn oncerlescinqp ropriŽtŽssuiv antesqu edoitsati sfaireunalgorithme:

ŽventualitŽsdÕuntraitement.

2.Finitude:Unalgorithmedo its Õarrter auboutdÕuntempsÞni.

3.DŽÞnitude:touteslesopŽration sd Õunalgorithmedo iventtr edŽÞniessansambigu•tŽ

4

4.RŽpŽtitivitŽ:gŽnŽralement,unalgorithm econ tientplusieursitŽrations,cÕestˆ dire

5.EocacitŽ:IdŽalement ,u nalgorithmedoittreconude telleso rtequÕilsedŽroule

enun tempsmi nimaletquÕil consommeunminimumderes so urces.

1.2.3Ex emples

ÐPGCDaPlu sGrandCommunDivis eurgdedeuxnom bresuetv. ÐAlgorithmena•f:ontestesuccessivemen tsichaquenom bre entieres tdiviseur commun.

ÐDŽcompositionennombrespremiers.

ÐAlgorithmesdetri

ÐAlgorithmesderecherche

texteg.

ÐRecherchedansundictionna ire.

Ð...etc.

1.2.4Rema rque

lisable.Onutilisedans cecasdes algorithmesheuristiquesq uifournissent dess olutio ns approchŽes.

1.3Langag ealgorithmiqueutilisŽ

Durantcecours,onvau til iserunlangageal gorith miquep ourladescriptiondesdi B gŽnŽraledÕunalgorit hmeetlaplupa rtdesdŽclarationsetinstructionsut ili sŽes. 5

AlgorithmePremierExemple;

TypeTTab=tableau[1..10]deree l;

ConstPi=3.14 ;

ProcŽdureDoubleax:reelg;

DŽbut

xBxo2; Fin;

FonctionInverseax:reelg:reel;

DŽbut

InverseB1/x;

Fin;

Vari,j, k:entier;

T:TTab;

S:chaine;

R:reel;

DŽbut

EcrireaÕBonjour,d onnerun nombreentiern10:Õg;

Lireaig ;

Siai>10gAlors

EcrireaÕErreur:id oittren10Õg

Sinon

Pourjde1ˆifaire

LireaRg;

DoubleaRg;

T[j]BR;

FinPour ;

kB1;

Tantqueaknigfaire

EcrireaT[k]oInverseaPigg;

kBk+1;

FinTQ;

SBÕProgrammeterminŽÕ;

EcrireaSg;

FinSi;

Fin.

Algorithme1:Algorithmet ype

6

Chapitre2

ComplexitŽdesalgorithmes

2.1Introduc tion

Letemps dÕexŽcutiondÕun algorithmedŽpenddesfacteurssu ivants:

ÐLesdonn ŽesutilisŽesparlep rogramme,

ÐLaqua litŽducompilateuralanga geuti lisŽg, ÐLamach ineutilisŽeavitesse,mŽmo ire,...g, ÐLacom plexitŽdelÕalgorithmelui-mm e, Oncherc heˆmesurerlacomplexi tŽd Õunalgorithmein dŽpenda mmentdelamachineet dulang ageutilisŽs,c-ˆ-duniqu ementenfonctiondelatailledesd onnŽesnquelÕalgori thme doittraiter. Parexemple,danslecasdetr idÕuntabl eau,nestlen ombred ՎlŽmentsdu tableau,etdanslecasdecal cul dÕuntermedÕu nesuit enestlÕin diceduterme,...etc.

2.2O-notat ion

Soitlafonction TangquireprŽsent elՎvolutiondutempsdÕex ŽcutiondÕunprogramme

Penfo nctiondunombrededonnŽes n.

Parexemple:

Tang=cn

2 Ocestune constanten onspŽciގequireprŽsentelavit essedelama chine,lesper- formancesdulangage,... etc.Ond itdanslÕexempleprŽcŽdentqu elacomplexitŽdePest Oan 2 g.Cel aveutdireq uÕilexist euneconstante cpositivetelquepournsuosamment grandona :

Tangncn

2 7 Cettenotati ondonneunemajorationduno mbredÕopŽrations exŽcutŽesatemp sdÕexŽ- cutiongparleprogram meP.Un progra mmedontlacomplexitŽestOafanggestunpr o- grammequia fangcommefonctiond ecroissancedutempsdÕex Žcution .

2.3.1L acomplexitŽdÕu neinstructionŽlŽmentaire

UneopŽrat ionŽlŽmentaireestuneopŽratio ndontletempsdÕexŽcutionestin dŽpendan t dela taillendesdonn ŽestelquelÕaBectation,lalecture,lՎcritu re,lacom paraison...etc. Lacompl exitŽdÕuneinstructionŽlŽment aireestOa1g

2.3.2La multiplicati onparuneconstante

Oacofangg= Oafangg

Exemple:

Oa n 3 4 g=Oan 3 g

2.3.3La complexitŽdÕun esŽquencededeuxmo dules

Lacompl exitŽdÕunesŽquencededeuxmodu lesM 1 decompl exitŽOafanggetM 2 decompl exitŽOaganggestŽgale ˆlaplusgrand ed escomplex itŽdesdeuxmodu les:

Oamaxafang,ganggg.

Oafangg+Oagangg= Oamaxafang,agangg

2.3.4La complexitŽdÕu neconditionnelle

Lacomp lexitŽdÕuneconditionnelle

SiaCondgAlors

M 1 Sinon M 2

FinSi;

8 estlema xentrel escomplexitŽs delՎvaluati onde,M 1 etM 2

Sia[Oahangg]gAlors

M 1 [Oafangg] Sinon M 2 [Oagangg]

FinSi;

Lacomp lexitŽdelaconditionnelleest:Max{Oahangg,Oafangg,Oagangg}

2.3.5La complexitŽdÕun eboucle

Lacompl exitŽdÕuneboucleestŽgaleˆl asommesurtoutesl esitŽrationsdela com- plexitŽducorpsdelabo ucle.

Tantquea[Oahangg]gfaire

[mfois ]

P;[Oafangg]

FinTQ;

Lacompl exitŽdelaboucleest:

B m Maxahang,fanggomest len ombred ÕitŽrat ions exŽcutŽesparlabou cle. 9

Exemple1:

AlgorithmeRecherche;

VarT:tableau[1..n]deen tier;

x,i:entier; trouv:booleen;

DŽbut

Pouride1ˆnfaire

LireaT [i]g;Oa1gOa

B n 1

1g=Oang

FinPou r;

Lireaxg;Oa1g

TrouvBfaux;Oa1gOa1g

iB1;Oa1gOang

Tantqueatrouv=fauxeti<=n[Oa1g]gfaire

SiaT[i]=x[Oa1g]gAlors

TrouvBvrai;[Oa1g]Oa1gOang

FinSi;

iBi+1;[Oa1g]

FinTQ;

Siatrouv=vrai[Oa1g]gAlors

Ecrireax,ÕexisteÕ g[Oa1g]Oa1g

Sinon

Ecrireax,ÕnÓexist epasÕg[Oa1g]

FinSi;

Fin. Lacomp lexitŽdelÕalgorithmeestdeOang+Oa1g+Oang+Oa1g=Oang. 10

Exemple2:Soitlemo dulesuivan t:

Pouride1ˆnfaire

[nfoisOa B n i=1 n igg]

Pourjdei+1ˆnfaire

[n ifoisOa B nBi 1

1g=Oan ig]

SiaT[i]>T[j][Oa1g]gAlors

tmpBT[i];[Oa1g]

T[i]BT[j];[Oa1g]Oa1g

T[j]Btmp;[Oa1g]

FinSi;

FinPour ;

FinPour ;

Lacomp lexitŽ=Oa

B n an ig=Oaan 1g+a n 2g...+1g =Oa nanB1g 2 g=Oa n 2 2 n 2 g=Oan 2 g 11

Exemple3:Reche rchedi chot omique

AlgorithmeRechercheDecho;

VarT:tableau[1..n]deen tier;

x,sup,inf,m:entier; trouv:booleen;

DŽbut

Lireaxg;[Oa1g]

TrouvBfaux;[Oa1g]

infB1;[Oa1gOa1g] supBn;[Oa1g]

Tantqueatrouv=fauxetinf [log 2 angfois] mBainf+Supg div 2;[Oa1g]

SiaT[m]=x[Oa1g]gAlors

TrouvBvrai[Oa1g]

Sinon

SiaT[m] infBm+1;[Oa1gOa1gOalog 2 angg] Sinon

SupBm-1;[Oa1g]

FinSi;

FinSi;

FinTQ;

Siatrouv=vrai[Oa1g]gAlors

Ecrireax,ÕexisteÕ g;[Oa1g]Oa1g

Sinon

Ecrireax,ÕnÕexist epasÕg;[Oa1g]

FinSi;

Fin.

Lacomp lexitŽdelÕalgorithmeestde:

12

Oa1g+Oalog

2 angg+Oa1g=Oalog 2 angg=Oalogangg.

2.4Complex itŽdesalgorithmesrŽcursifs

Lacomp lexitŽdÕunalgorithmerŽcurs ifsefaitparla rŽsolutiondÕuneŽquationderŽ- currenceenŽliminantl arŽcu rrenceparsubstitutiondepr ocheen proche.

Exemple

Soitlafonction rŽcursiv esuivante:

FonctionFactan:entierg:entier;

DŽbut

Sian<=1 [Oa1g]gAlors

FactB1[Oa1g]

Sinon

FactBneF acta n-1g[Oa1g]

FinSi;

Fin; PosonsTangletemps dÕexŽcutionnŽcess airepourunappelˆFactang,Tangest le maximumentre:

Ðlacompl exitŽdutestnn1quiestenOa1g,

Ðlacompl exitŽde:FactB1qu iestaussien Oa1g,

Ðlacompl exitŽde:FactBneFactan-1gdontletempsd Õex Žcutiond ŽpenddeTan 1g apourlecalculdeFa ctan-1g g

Onpeutd oncŽcrirequ e:

Tang= o n asin<=1 b+Tan 1gsinonasin>1g ÐLaconstan teaenglobeletempsdutest an<=1getle tempsde lÕaBectation aFactB1g

ÐLaconstan tebenglobe:

eletemps dutestan<=1g, eletemp sdelÕopŽratio neentre netle rŽsulta tdeFactan 1g, 13 eetl etempsd elÕaBectationÞnaleaFactB...g Tan 1galetempsnŽces sairepourleca lculdeFactan 1gseracalculŽa rŽcursivementg aveclammed Žcomposi tion.Pou rcalculerlasolutiongŽnŽraledecetteŽquation, onpeut procŽderparsubstitut ion:

Tang=b+Tan 1g

=b+[b+Tan 2g] =2b+Tan 2g =2b+[b+Tan 3g] =ib+Tan ig =ib+[b+Tan i+1g] =an 1gb+Tan n+1g= nb b+Ta1g=nb b+a

Tang=nb b+a

DoncFactestenOangcarbest une constan tepositiv e.

2.5Typesdec omplexitŽalgo rit hmique

1.Tang=Oa1g,tem psconstant:t empsdÕexŽcutionindŽpenda ntd elatailledesdonn Žes

ˆtr aiter.

2.Tang=Oalogangg,tem pslogarithm ique:onrencontregŽnŽralementunetellecom-

3.Tang=Oang,tem pslinŽaire:cet tecomplexitŽestgŽnŽralemen tob tenuelorsq uÕun

travailentempsconstantest e B ectuŽsurcha quedonnŽe enentrŽe.

5.Tang=Oan

2 g,t empsquadratiq ue:appara"tnotammentlorsquelÕalgo rit hmeenvi- sagetouteslesp airesdedonnŽespar milesnen trŽesaex.deuxboucles imbriq uŽesg

Remarque:Oan

3 gtempscubique

6.Tang=Oa2

n g,t empsexponentiel :souventlerŽsultatderechercheb rut aledÕune solution. 14

2.6Exercic es

1.CalculerlacomplexitŽ delÕal gorithmesuivant:

Pouride2ˆnfaire

kBi-1; xBT[i];

TantqueaT[k]>xetk >0 gfaire

T[k+1]BT[k];

kBk-1;

FinTQ;

T[k+1]Bx;

FinPour ;

2.Calculerlacomplexit ŽdelÕa lgorithmesuivant:

iBn; SB0;

Tantqueai>0gfaire

jB2ei;

Tantqueaj>1gfaire

SBS+aj-igeaS+1g;

jBj-1;

FinTQ;

iBidiv2;

FinTQ;

15

3.CalculerlacomplexitŽ delÕal gorithmesuivant:

iB1; jB0;

Pourkde1ˆnfaire

jBi+j; iBj-i;

FinPour ;

quotesdbs_dbs45.pdfusesText_45

[PDF] algorithme et structure de données exercices corrigés pdf PDF Cours,Exercices ,Examens

[PDF] algorithme et structure de données pdf PDF Cours,Exercices ,Examens

[PDF] algorithme et suite à faire mais difficile pour moi à comprendre merci de votre Terminale Mathématiques

[PDF] algorithme et suite math 1ère Mathématiques

[PDF] Algorithme et valeur de x 2nde Mathématiques

[PDF] Algorithme et vecteurs 2nde Mathématiques

[PDF] algorithme euclide 3eme 3ème Mathématiques

[PDF] Algorithme euclidien : le PGCD 3ème Mathématiques

[PDF] algorithme exemple PDF Cours,Exercices ,Examens

[PDF] algorithme exercice DM 2nde Mathématiques

[PDF] algorithme exercice et solution PDF Cours,Exercices ,Examens

[PDF] ALgorithme exercice long 2nde Mathématiques

[PDF] Algorithme exercice seconde 2nde Mathématiques

[PDF] algorithme exercices corrigés pdf PDF Cours,Exercices ,Examens

[PDF] algorithme exo long 2nde Mathématiques