Sunteți pe pagina 1din 9

Algoritmi și tehnici de

programare
Asociat drd. Andreea-Cristina Stroe
andreea.stroe@csie.ase.ro
Agendă seminar
1. Recapitularea cunoștințelor de bază: pointeri, funcții, parametri
2. Fișiere text
3. Algoritmi de prelucrare a fișierelor binare organizate secvențial
4. Algoritmi de prelucrare a fișierelor binare organizate relativ
5. Recursivitate, Divide et Impera
6. Algoritmi de sortare
7. Metoda Greedy
8. Metoda backtracking
9. Grafuri
10. Algoritmul lui Dijkstra
11. Algoritmii Kruskal și Prim
Evaluare
 Activitate la curs: 70%
 Evaluare în sesiune, la facultate
 Activitate la seminar: 30%
 Probă practică pe calculator: 20%
 Susținută în săptămâna 7
 Va cuprinde noțiunile despre fișiere

 Activitate de laborator: 10%


 Teme (5 probleme)
Recapitularea cunoștințelor de bază - Pointeri

Accesarea adreselor din


memorie la care sunt
stocate variabilele prin
intermediul
POINTERILOR
Recapitularea cunoștințelor de bază - Pointeri
 Pointerul reprezintă o variabilă care conține / memorează adresa unei alte variabile

o variabilă care indică spre o a doua variabilă


 Sintaxă: tip *variabila_pointer

 Exemplu:
în program: in memorie
//declarație variabile
int i =17, j = 3;
//declarație pointer
int *p;
Recapitularea cunoștințelor de bază - Pointeri
 În lucrul cu pointerii, se folosesc doi operatori:
 & - operator de referențiere => extragerea adresei unei variabile
 * - operator de referențiere / dereferențiere => referirea conținutului zonei de memorie
indicate de pointer

 Un pointer poate fi refolosit, în sensul că poate conține adrese diferite la diferite momente de timp:
Recapitularea cunoștințelor de bază - Referințe
 Referințele sunt variabile care conțin adresa unei zone de memorie

aliasuri ale unor variabile existente


 Sintaxă: Tip& nume_referinta = valoare

 Exemplu:
Recapitularea cunoștințelor de bază - Subprograme
 Forma generală a unui subprogram

 Apelarea unui subprogram


Recapitularea cunoștințelor de bază – Alocarea dinamică a
memoriei
 Este nevoie de includerea:
#include <malloc.h>
 Funcții:
 malloc() – folosită pentru alocarea memoriei
 free() – folosită pentru eliberarea memoriei

S-ar putea să vă placă și