Structuri de Date

Curs
9.5/10 (4 voturi)
Domeniu: Calculatoare
Conține 7 fișiere: doc
Pagini : 152 în total
Cuvinte : 36672
Mărime: 283.03KB (arhivat)
Cost: Gratis

Extras din document

CURS 1. - STRUCTURI DE DATE

Scop : prezentarea celor mai importante structuri de date ce pot fi utilizate pentru modelarea datelor din aplicatii.

I. INTRODUCERE

1. Conceptul de structură de date

Orice algoritm primeşte date de intrare, le prelucrează şi obţine date de ieşire. În fiecare caz, datele de intrare, datele intermediare - cele create în timpul prelucrării - şi datele de ieşire sunt structurate (organizate) într-un anumit fel care corespunde intrării, necesităţilor de prelucrare sau a celor de utilizare ulterioară.

Pentru a veni în sprijinul programatorilor, limbajele de programare evoluate (de exemplu Pascal, C) pun la dispoziţia acestora posibilitatea organizării datelor în anumite "şabloane" numite tipuri de date. Mai precis, prin tip de date se înţelege:

• o mulţime de valori;

• o regulă de codificare a acestora;

• o mulţime de operaţii definite pe mulţimea datelor.

La rândul lor, tipurile de date pot fi:

• simple - descriu date care apartin unor mulţimi care nu sunt rezultate ca produs cartezian al altor mulţimi. Exemplu: integer.

• structurate -descriu date care apartin unor mulţimi rezultate ca produs cartezian al altor mulţimi.

Exemple:

1. type rational=record

p,q:integer;

end

Prin tipul de mai sus se descrie structura unei variabile capabilă să reţina numere raţionale.

2. type vector-array [1..100] of real;

Fie B mulţimea valorilor care pot fi reţinute de tipul real. Atunci o variabilă de tip vector poate reţine la un moment dat un element al mulţimii:

BxBx...xB

de n ori

Practica impune utilizarea unor structuri ale datelor de o mare varietate, care nu se suprapun întotdeauna peste tipurile care pot fi descrise prin limbaj, de obicei obţinându-se prin combinarea celor elementare .

- Prin structură de date vom înţelege un asamblu de date caracterizat prin relaţiile existente între ele şi a operaţiilor care pot fi efectuate cu datele respective.

Vom numi nod o variabilă de un tip oarecare. De obicei, acest tip este structurat. După caz, termenul nod poate fi înlocuit cu articol, înregistrare sau entitate.

În cele mai multe cazuri, "ansamblul de date" care alcătuieşte structura e alcătuit dintr-o mulţime cu un număr variabil de noduri.

2. Clasificarea structurilor de date :

I. Structuri de date elementare :

- tablouri ( vectori, matrici, şiruri de caractere )

- înregistrare

- mulţime

- fişiere

II. Structuri de date dinamice :

- structura de tip listă ( listă simplu înlănţuită, dublu înlănţuită, circulară, stivă, coadă )

- structura de tip arbore: arbori binari, arbori binari de cautare, arbori oarecare.

III. Structuri de tip graf :

- grafuri neorientate

- arbori

- grafuri orientate

Observaţie :

Algoritmii de prelucrare a structurilor de date vor fi implementaţi şi prezentaţi în limbajul Pascal.

II. Structuri de date elementare :

În cele mai multe situaţii reale, un program trebuie să lucreze cu foarte multe date. Utilizând pentru aceste date numai tipuri simple, programul devine foarte greu de înţeles şi chiar de scris. O dată complexă, care memorează mai mult decât o dată simplă se numeşte structură de date. Principalele structuri de date elementare (tipuri structurate de date) ale limbajului Pascal sunt (care au corespondent si alte limbaje de programare):

- Tipul de date tablou (ARRAY)

- Tipul de date sir de caractere (STRING)

- Tipul de date înregistrare (RECORD)

- Tipul de date mulţime (SET)

- Tipul de date fişier (FILE)

1. Structura de tip tablou – se foloseşte pentru păstrarea mai multor date de acelaşi tip.

Un tablou este o mulţime finită şi ordonată de elemente de acelaşi tip căruia i se asociază un nume. Un element al mulţimii este identificat prin intermediul numelui tabloului şi a valorii unuia sau mai multor indici (tablourile putând fi unidimensionale sau multidimensionale) cu valori în subdomenii ale tipurilor ordinale (integer, char, boolean).

Pentru fiecare tip de date tablou utilizat într-un program Pascal trebuie specificat domeniul de valori pentru fiecare indice şi tipul elementelor tabloului (denumit şi tip de bază).

În general, o declaraţie de tip tablou are forma :

array [ lista_domenii_indici ] of tip_element

Preview document

Structuri de Date - Pagina 1
Structuri de Date - Pagina 2
Structuri de Date - Pagina 3
Structuri de Date - Pagina 4
Structuri de Date - Pagina 5
Structuri de Date - Pagina 6
Structuri de Date - Pagina 7
Structuri de Date - Pagina 8
Structuri de Date - Pagina 9
Structuri de Date - Pagina 10
Structuri de Date - Pagina 11
Structuri de Date - Pagina 12
Structuri de Date - Pagina 13
Structuri de Date - Pagina 14
Structuri de Date - Pagina 15
Structuri de Date - Pagina 16
Structuri de Date - Pagina 17
Structuri de Date - Pagina 18
Structuri de Date - Pagina 19
Structuri de Date - Pagina 20
Structuri de Date - Pagina 21
Structuri de Date - Pagina 22
Structuri de Date - Pagina 23
Structuri de Date - Pagina 24
Structuri de Date - Pagina 25
Structuri de Date - Pagina 26
Structuri de Date - Pagina 27
Structuri de Date - Pagina 28
Structuri de Date - Pagina 29
Structuri de Date - Pagina 30
Structuri de Date - Pagina 31
Structuri de Date - Pagina 32
Structuri de Date - Pagina 33
Structuri de Date - Pagina 34
Structuri de Date - Pagina 35
Structuri de Date - Pagina 36
Structuri de Date - Pagina 37
Structuri de Date - Pagina 38
Structuri de Date - Pagina 39
Structuri de Date - Pagina 40
Structuri de Date - Pagina 41
Structuri de Date - Pagina 42
Structuri de Date - Pagina 43
Structuri de Date - Pagina 44
Structuri de Date - Pagina 45
Structuri de Date - Pagina 46
Structuri de Date - Pagina 47
Structuri de Date - Pagina 48
Structuri de Date - Pagina 49
Structuri de Date - Pagina 50
Structuri de Date - Pagina 51
Structuri de Date - Pagina 52
Structuri de Date - Pagina 53
Structuri de Date - Pagina 54
Structuri de Date - Pagina 55
Structuri de Date - Pagina 56
Structuri de Date - Pagina 57
Structuri de Date - Pagina 58
Structuri de Date - Pagina 59
Structuri de Date - Pagina 60
Structuri de Date - Pagina 61
Structuri de Date - Pagina 62
Structuri de Date - Pagina 63
Structuri de Date - Pagina 64
Structuri de Date - Pagina 65
Structuri de Date - Pagina 66
Structuri de Date - Pagina 67
Structuri de Date - Pagina 68
Structuri de Date - Pagina 69
Structuri de Date - Pagina 70
Structuri de Date - Pagina 71
Structuri de Date - Pagina 72
Structuri de Date - Pagina 73
Structuri de Date - Pagina 74
Structuri de Date - Pagina 75
Structuri de Date - Pagina 76
Structuri de Date - Pagina 77
Structuri de Date - Pagina 78
Structuri de Date - Pagina 79
Structuri de Date - Pagina 80
Structuri de Date - Pagina 81
Structuri de Date - Pagina 82
Structuri de Date - Pagina 83
Structuri de Date - Pagina 84
Structuri de Date - Pagina 85
Structuri de Date - Pagina 86
Structuri de Date - Pagina 87
Structuri de Date - Pagina 88
Structuri de Date - Pagina 89
Structuri de Date - Pagina 90
Structuri de Date - Pagina 91
Structuri de Date - Pagina 92
Structuri de Date - Pagina 93
Structuri de Date - Pagina 94
Structuri de Date - Pagina 95
Structuri de Date - Pagina 96
Structuri de Date - Pagina 97
Structuri de Date - Pagina 98
Structuri de Date - Pagina 99
Structuri de Date - Pagina 100
Structuri de Date - Pagina 101
Structuri de Date - Pagina 102
Structuri de Date - Pagina 103
Structuri de Date - Pagina 104
Structuri de Date - Pagina 105
Structuri de Date - Pagina 106
Structuri de Date - Pagina 107
Structuri de Date - Pagina 108
Structuri de Date - Pagina 109
Structuri de Date - Pagina 110
Structuri de Date - Pagina 111
Structuri de Date - Pagina 112
Structuri de Date - Pagina 113
Structuri de Date - Pagina 114
Structuri de Date - Pagina 115
Structuri de Date - Pagina 116
Structuri de Date - Pagina 117
Structuri de Date - Pagina 118
Structuri de Date - Pagina 119
Structuri de Date - Pagina 120
Structuri de Date - Pagina 121
Structuri de Date - Pagina 122
Structuri de Date - Pagina 123
Structuri de Date - Pagina 124
Structuri de Date - Pagina 125
Structuri de Date - Pagina 126
Structuri de Date - Pagina 127
Structuri de Date - Pagina 128
Structuri de Date - Pagina 129
Structuri de Date - Pagina 130
Structuri de Date - Pagina 131
Structuri de Date - Pagina 132
Structuri de Date - Pagina 133
Structuri de Date - Pagina 134
Structuri de Date - Pagina 135
Structuri de Date - Pagina 136
Structuri de Date - Pagina 137
Structuri de Date - Pagina 138
Structuri de Date - Pagina 139
Structuri de Date - Pagina 140
Structuri de Date - Pagina 141
Structuri de Date - Pagina 142
Structuri de Date - Pagina 143
Structuri de Date - Pagina 144
Structuri de Date - Pagina 145
Structuri de Date - Pagina 146
Structuri de Date - Pagina 147
Structuri de Date - Pagina 148
Structuri de Date - Pagina 149
Structuri de Date - Pagina 150
Structuri de Date - Pagina 151
Structuri de Date - Pagina 152

Conținut arhivă zip

  • Curs1- Structuri de date.doc
  • Curs2- Structuri de date.doc
  • Curs3- Structuri de date.doc
  • Curs4- Structuri de date.doc
  • Curs5-Structuri de date.doc
  • Curs6- Structuri de date.doc
  • Curs7- Structuri de date.doc

Alții au mai descărcat și

Crearea unei Pagini Web

Capitolul 1. Introducere în HTML 1.1 Noţiuni generale HyperText Markup Language (HTML) este un limbaj de marcare utilizat pentru crearea...

Proiectarea unei Solutii de Comert Electronic

Comertul electronic reprezinta multitudinea proceselor software si comerciale necesare proceselor business sa functioneze numai, sau în primul...

Sabloane de Proiectare a Interfetelor Utilizator pentru Aplicatii Web

Capitolul 1 Introducere Lucrarea prezinta sabloanele de proiectare , ce sunt acestea si cum ne ajuta ele in rezolvarea problemelor de proiectare...

Arbori Partiali de Cost Minim

I. Arbori Fie G un graf orientat. G este un arbore cu radacina r, daca exista in G un varf r din care oricare alt varf poate fi ajuns printr-un...

Algoritmi de Rutare

Algoritmii de rutare pot fi diferenţiaţi după obiectivul particular dorit, impactul asupra reţelei şi resurselor ruterului, metricile folosite....

Problema Comis Voiajor - Turbo Pascal

Problema “COMIS VOIAJORULUI” 1. Metoda Backtracking Stiva este acea forma de organizare a datelor (structura de date ) cu proprietatea ca...

Tablouri - Turbo Pascal

TABLOURI ÎN PASCAL “Se stie ca o idee începe prin a fi un paradox, continua prin a fi o banalitate si sfârseste prin a fi o prejudecata” Gr. C....

Proiectarea Algoritmilor

1. INTRODUCERE ÎN PROIECTAREA ALGORITMILOR 1.1. Definiţii Un algoritm este o metodă de rezolvare pas cu pas a problemelor. O problemă este...

Ai nevoie de altceva?