STRUCTURI DE DATE, ALGORITMI ȘI TEHNICI DE PROGRAMARE
cu aplicații în limbajul Java
prof.dr.ing. Severin BUMBARU
Universitatea "Dunărea de Jos" din Galați
CUPRINSUL
- 1. Introducere
- Obiectivele disciplinei. Date primitive și structuri de date.
Algoritmi. Complexitatea algoritmilor. Operații cu tablouri
- 2. Recursivitate
- Recursia. Comparație între iterație și recursie. Algoritmi
recursivi de sortare a tablourilor. Clasa Arrays în Java API
- 3. Colecții (1)
- Conceptele de colecție, mulțime și iterator. Liste. Liste stive
și cozi implementate ca tablouri.
- 4. Colecții (2)
- Liste înlănțuite și realizarea lor în Java. Coada și stiva
implementate prin liste înlănțuite.Liste recursive. Liste în interfața
grafică.
- 5. Colecții (3)
- Tabele de dispersie. Clasa HashSet. Mapări. Interfețele Map și
Map.Entry.Clase de mapări în pachetul java.util implementate ca tabele
de dispersie. Clasa Collections.
- 6. Arbori (1)
- Conceptul de arbore. Arbori binari. Coada de priorități și
arborele de selecție. Sortarea tablourilor prin metoda HeapSort.
- 7. Arbori (2)
- Implementarea arborilor binari și a
arborilor generali. Traversarea arborilor.
- 8. Arbori (3)
- Arbori de căutare. Arbori de căutare echilibrați. Clase de arbori
în pachetele de clase din Java SDK.
- 9. Grafuri (1)
- Grafuri. Noțiuni generale. Reprezentări ale grafurilor pe
calculator. Explorarea grafurilor.
- 10. Grafuri (2)
- Arbori de acoperire. Componente tare conexe. Sortare topologică.
- 11. Tehnici de
programare (1)
- Divide et impera, backtracking.
- 12. Tehnici de
programare (2)
- Greedy, programare dinamică
-
- Bibliografie