Cuprins
- Introducere 3
- Tablouri 5
- Tablouri unidimensionale 6
- Tablouri bidimensionale 10
- Siruri de caractere 13
- Struct (înregistrarea) 17
- Liste 19
- Lista simplu înlantuita 20
- Liste dublu înlantuite 24
- Stiva 27
- Coada 29
- Grafuri 32
- POO 46
- Aplicatii 54
- Bibliografie 55
Extras din proiect
Introducere
Rareori avem nevoie de programe care prelucreaza date simple(numere întregi, numere reale, caractere). De cele mai multe ori programele prelucreaza volume mai de date si pentru ca prelucrarea sa se realizeze eficient este necesara organizarea datelor în structuri.
Structurile de date erau definite în limbajul C drept organizarea datelor primare. În limbajul C++, acestea reprezinta o colectie de date împreuna cu operatiile lor (data obiect).
De exemplu, prin multimea N a numerelor naturale se va întelege si elementele multimii N, dar si operatiile ce se pot efectua cu acestea: 1, 2, 3, ..., +, -, *, /.
O structura de date reprezinta un ansamblu de date organizate dupa anumite reguli, reguli ce depind de tipul de structura .
Sau, colectia de date sau structura de date reprezinta o metoda de aranjare a datelor care sunt dependente unele de altele în cadrul unei aplicatii si definirea operatiilor acceptate.
Structura de date este o colectie de date între elementele careia se defineste un anumit tip de relatie, care determina metodele de localizare si de prelucrare a datelor .
Prin urmare, structura de date este o colectie de elemente pentru care s-a precizat: tipul elementelor proprietatile de organizare a elementelor si regulile de acces la elemente. Componentele unei structuri de date pot fi date elementare sau structuri de date.
O structura de date este o entitate de sine statatoare. Ea poate fi identificata printr-un nume, iar componentele ei îsi mentin atributele. Fiecarei structuri de date îi este specific un anumit mecanism de identificare si de selectie a componentelor colectiei de date.
Structurile de date pot fi clasificate dupa diferite criterii:
1. dupa tipul componentelor structurii:
- Structuri omogene (componentele sunt de acelasi tip)
- Structuri neomogene (componentele sunt de tipuri diferite)
2. dupa modul de localizare a componentelor structurii:
- Structuri cu acces direct (o componenta poate fi localizata fara sa se tina cont de celelalte componente ale structurii)
- Structuri cu acces secvential (o componenta poate fi localizata numai daca se parcurg componentele care o preced în structura)
3. în functie de tipul de memorie în care sunt create:
- Structuri interne (în memoria interna)
- Structuri externe (în memoria externa)
4. în functie de timpul de utilizare:
- Structuri de date temporare
- Structuri de date permanente
5. în functie de stabilitatea structurii:
- Structuri dinamice (în timpul existentei, în urma executarii unor procese, îsi modifica numarul de componente si relatiile dintre ele)
- Structuri statice (nu îsi modifica în timpul existentei numarul de componente si relatiile dintre ele).
Asupra unei structuri de date se pot executa mai multe operatii, care pot afecta valorile componentelor structurii si/sau structura de date:
1. Crearea, prin care se realizeaza structura de date în forma initiala, pe suportul de memorie utilizat.
2. Consultarea, prin care se realizeaza accesul la componentele structurii, în vederea prelucrarii valorilor acestora si a extragerii de informatii.
3. Actualizarea, prin care se schimba starea structurii astfel încât ea sa reflecte corect valoarea componentelor la un moment dat. Actualizarea se face prin trei operatii: adaugarea unor noi componente, stergerea unor componente si modificarea valorii componentelor.
4. Sortarea, prin care se rearanjeaza componentele structurii în functie de anumite criterii de ordonare aplicate valorilor componentelor
5. Copierea, prin care se realizeaza o imagine identica a structurii, pe acelasi suport sau pe suporturi diferite de memorare.
6. Mutarea, prin care se transfera structura, pe acelasi suport, la o alta adresa, sau pe un suport de memorare diferit.
7. Redenumirea, prin care se schimba numele structurii
8. Divizarea, prin care se realizeaza doua sau mai multe structuri dintr-o structura de baza.
9. Reuniunea(concatenarea), prin care se realizeaza o singura structura de date, prin combinarea a doua sau mai multe structuri de date de acelasi tip.
10. Stergerea, prin care se distruge structura de date.
Implementarea unei structuri de date presupune:
- Definirea structurii din punct de vedere logic (definirea componentelor, a relatiei dintre componente si a operatiilor care pot actiona asupra structurii).
- Definirea structurii din punct de vedere fizic (modul în care structura va fi reprezentata pe suportul de memorare).
Tipul de structura de date defineste apartenenta structurii de date la o anumita familie de structuri carora le corespunde acelasi mod de organizare logica, acelasi model de reprezentare fizica si care pot fi supuse acelorasi operatii.
Preview document
Conținut arhivă zip
- Tipuri de Structuri de Date in C-C++.doc