Documente Academic
Documente Profesional
Documente Cultură
Curs01 - Introducere
Curs01 - Introducere
Politehnica
Bucureşti
Structuri de Date:
Introducere
alexandru.olteanu@upb.ro
STRUCTURI DE DATE – CURSUL 1 – Introducere
De ce aceasta facultate?
?? ??!?!?!
2
Februarie 2020
STRUCTURI DE DATE – CURSUL 1 – Introducere
People profile
The Matrix
4
Februarie 2020
STRUCTURI DE DATE – CURSUL 1 – Introducere
De ce acest curs?
5
Februarie 2020
STRUCTURI DE DATE – CURSUL 1 – Introducere
Situarea cursului
6
Februarie 2020
STRUCTURI DE DATE – CURSUL 1 – Introducere
C vs C++
C C++
Object-Oriented no yes
Learning curve quick recap PC min. 3 weeks
mai simplu: de ce nu imi mai complex: de ce nu imi
iese structura de date compileaza programul
Clean code void* data structures as classes
char arrays string
Libraries several: link STL and many more
Aplicatii Embedded Gaming
7
Februarie 2020
STRUCTURI DE DATE – CURSUL 1 – Introducere
Despre cursul de SD
8
Februarie 2020
STRUCTURI DE DATE – CURSUL 1 – Introducere
9
Februarie 2020
STRUCTURI DE DATE – CURSUL 1 – Introducere
10
Februarie 2020
STRUCTURI DE DATE – CURSUL 1 – Introducere
11
Februarie 2020
STRUCTURI DE DATE – CURSUL 1 – Introducere
Teorie Cod
12
Februarie 2020
Universitatea
Politehnica
Bucureşti
C Programming
STRUCTURI DE DATE – CURSUL 1 – Introducere
C Programming
• Inclusion of headers
• Definition of types
• Declaration of global variables #include <stdio.h>
• Definition of functions // global variables should be avoided
• The main function char* name = "Joe";
int main() {
char* name = "Joe";
sayHello(name);
return 0;
}
C Compiling process
https://www.geeksforgeeks.org/compiling-a-c-program-behind-the-scenes/
15
Februarie 2020
Universitatea
Politehnica
Bucureşti
Alocarea Memoriei
STRUCTURI DE DATE – CURSUL 1 – Introducere
• Alocare statica:
• memoria este alocata de compilator, nu se mai poate modifica la runtime
• pe Stack
• Alocare dinamica:
• memoria este alocata la runtime
• pe Heap
17
Februarie 2020
STRUCTURI DE DATE – CURSUL 1 – Introducere
int a;
a = 10;
sizeof(a)
sizeof(int)
18
Februarie 2020
STRUCTURI DE DATE – CURSUL 1 – Introducere
free(ptr);
struct Masina {
char* culoare;
int cai_putere;
long pret;
};
struct Masina {
char* culoare;
int cai_putere;
long pret;
};
22
Februarie 2020
STRUCTURI DE DATE – CURSUL 1 – Introducere
free(ptr);
23
Februarie 2020
STRUCTURI DE DATE – CURSUL 1 – Introducere
24
Februarie 2020
STRUCTURI DE DATE – CURSUL 1 – Introducere
25
Februarie 2020
STRUCTURI DE DATE – CURSUL 1 – Introducere
http://c-faq.com/aryptr/dynmuldimary.html
26
Februarie 2020
STRUCTURI DE DATE – CURSUL 1 – Introducere
Bibliografie
27
Februarie 2020
STRUCTURI DE DATE – CURSUL 1 – Introducere
28
Februarie 2020
STRUCTURI DE DATE – CURSUL 1 – Introducere
29
Februarie 2020
STRUCTURI DE DATE – CURSUL 1 – Introducere
30
Februarie 2020