Anda di halaman 1dari 7

by

Google

Daniel Danciu George Mardale

ARTA PROGRAMRII N JAVA

voi II - Algoritmi i structuri de

dateDigitized byGoogle

Cupri

Analiza eficienei algoritmilor 15


9.1
9.2
9.3

9.4

9.5

Ce este analiza algoritmilor?................................................................ 16


Notaia asimptotic.............................................................................. 18
9.2.1
O notaie pentru ordinul de mrime al timpului de execuie al unui algoritm 19
Tehnici de analiza algoritmilor.............................................................21
9.3.1........................................................................ Sortarea prin selecie 21
9.3.2........................................................................ Sortarea prin inserie 23
9.3.3.......................................................................... Turnurile din Hanoi 24
Analiza algoritmilor recursivi...............................................................25
9.4.1................................................................................ Metoda iteraiei 25
9.4.2........................................................................ Inducia constructiv 26
9.4.3............................................................... Recurene liniare omogene 26
9.4.4........................................................... Recurene liniare neomogene 28
9.4.5....................................................................... Schimbarea variabilei 31
Implementarea algoritmilor..................................................................33

10

Structuri de date 40
10.1
10.2
10.3
10.4
10.5

Cum implementm structurile de date?................................................43


Stive.....................................................................................................45
Cozi.....................................................................................................51
Liste nlnuite ....................................................................................55
Arbori..................................................................................................64
10.5.1............................................................................. Noiuni generale
10.5.2................................................................................... Arbori binari
10.5.3................................................................. Arbori binari de cutare
10.6................................................................................... Tabele de repartizare
10.6.1 Tratarea coliziunilor.................................................................90
3Y10.7 Cozi de prioritate...............................................................................92
10.7.1 Ansamble.................................................................................94

11 Metoda Backtracking

64
65
69
83

108

11.1 Prezentare general............................................................................109


11.2 Prezentarea metodei...........................................................................110
11.2.1 Atribuie i avanseaz.............................................................114
11.2.2 ncercare euat.....................................................................114
11.2.3 Revenire ...............................................................................115
11.2.4 Revenire dup construirea unei soluii..................................115
11.3 Implementarea metodei backtracking................................................117
11.4 Probleme clasice rezolvabile prin backtracking ................................119
11.4.1 Problema generrii permutrilor............................................119
11.4.2 Generarea aranjamentelor i a combinrilor.........................124
11.4.3 Problema damelor.................................................................126
11.4.4 Problema colorrii hrilor....................................................127

12 Divide et impera

137

12.1......................................................................... Introducere n recursivitate


12.1.1 Funcii recursive....................................................................138

138

12.2
12.3
12.4
12.5
12.6

12.1.2 Recursivitatea nu nseamn recuren...................................143


Prezentarea metodei Divide et Impera...............................................145
Cutare binar....................................................................................146
Sortarea prin interclasare (MergeSort)..............................................149
Sortarea rapid (QuickSort)...............................................................152
Expresii aritmetice.............................................................................157

13 Algoritmi Greedy

167

13.1 Problema spectacolelor (selectarea activitilor)...............................168


13.1.1 Demonstrarea corectitudinii algoritmului............................169
13.1.2 Soluia problemei spectacolelor............................................171
13.2 Elemente ale strategiei Greedy..........................................................173
13.2.1 Proprietatea de alegere Greedy..............................................176
13.2.2 Sub structur optim.............................................................176
13.3 Minimizarea timpului mediu de ateptare ........................................177
Interclasarea optim a mai multor iruri ordonate
180

Anda mungkin juga menyukai