Structuri de date, algoritmi si tehnici de programare

prof.dr.ing. Severin BUMBARU
Universitatea "Dunarea de Jos" din Galati

Saptamana 1: Date primitive si structuri de date. Structuri de date fundamentale: tabloul si articolul (inregistrarea).  Clase si obiecte. Algoritmi. Complexitatea algoritmilor. Algoritmi iterativi de sortare si cautare in tablouri.
Saptamana 2: Recursivitate. Functii si proceduri recursive. Comparatie intre iteratie si recursie. Algoritmi de sortare rapida a tablourilor. Clasa Arrays in Java.
Saptamana 3: Colectii si iteratori. Multimi si liste. Liste implementate ca tablouri si realizarea lor in Java. Stive si cozi si implementarea lor prin liste-tablou.
Saptamana 4: Liste inlantuite si realizarea lor in Java. Coada si stiva implementate prin liste inlantuite.Liste recursive. Liste in interfata grafica.
Saptamana 5:  Tabele de dispersie. Clasa HashSet. Mapari. Interfetele Map si Map.Entry.Clase mapari de dispersie in pachetul java.util implementate ca tabele de dispersie. Clasa Collections.
Saptamana 6: Arbori. Conceptul de arbore. Arbori binari. Coada de prioritati si arborele de selectie. Sortarea tablourilor prin metoda HeapSort.
Saptamana 7: Prima lucrare de verificare.
Saptamana 8: Implementarea si traversarea arborilor binari si a arborilor generali.
Saptamana 9:  Arbori de cautare. Arbori echilibrati. Clase de arbori in pachetele de clase din Java SDK.
Saptamana 10: Grafuri. Notiuni generale. Reprezentari ale grafurilor pe calculator. Explorarea grafurilor.
Saptamana 11: Arbori de acoperire. Componente tare conexe. Sortare topologica.
Saptamana 12: Tehnici de programare: Divide et impera, backtracking.
Saptamana 13: Tehnici de programare: Branch and bound, Greedy, programarea dinamica.
Saptamana 14: A doua lucrare de verificare (pentru saptamanile 8-13).

Bibliografie:
1. Waite M, Lafore R. - Structuri de date si algoritmi in Java. Editura Teora, Bucuresti, 1999.
2. Andonie R., Garbacea I. - Algoritmi findamentali. O perspectiva C++. Editura Libris, Cluj-Napoca, 1995.
3. Cristea V., Athanasiu I., Kalisz E., Iorga V. - Tehnici de programare. Editura Teora, Bucuresti, 1994.
4. Tudor Sorin - Tehnici de programare. Editura Teora, Bucuresti, 1994.
5. Patrascoiu O., Marian Gh., Mitroi N. - Elemente de grafuri si combinatorica. Metode, algoritmi si programare. Editura All, Bucuresti, 1994.