CURSUL nr.09


predat in ziua de 08 decembrie 2008


CONVERSIA DE STRUCTURI DE DATE


Daca se considera o problema P si se va lucra numai cu o structura de date Si se va observa ca apar situatii in care structura Si se va dovedi ineficienta.
daca se lucreaza cu un fisier secvential, cand se pune problema traversarii integrale, structura este eficienta.
Daca se doreste cautarea dupa chei nesortate, trebuie:
- deschis fisierul de fiecare data
- citite articole pana se gaseste cel cu cheia cautata
- se inchide fisierul.
Operatia se reia cate chei nesortate sunt.
este convenabil sa se lucreze cu o structura arborescenta.
A face conversie inseamna:
- a porni de la o structura Si
- a utiliza informatia utila din structura Si pentru a o pune intr-o structura Sj
- structura Sj se creaza prin adaugare de elemente odata cu traversarea structurii Si
daca sunt n structuri se scriu n2-n proceduri de conversie de la structura Si la structura Sj cu i != j.
Se construieste o biblioteca cu n2-n proceduri.
Conversia de la structura Si la structura Sj se face intr-un singur pas.
daca se ia o structura S1 ca fiind de baza si celelalte structuri S2, S3, ..., Sn, se vor scrie n-1 proceduri care fac conversia de la structura Si, i=2,3,...,n, la structura S1 si alte n-1 structuri care efectueaza conversia de la structura Si la structura S1.

OPTIMIZAREA IN LUCRUL CU STRUCTURI DE DATE


Trebuie ales un criteriu de optim dintre:
- minimizarea duratei medii a tranzactiei
- minimizarea volumului de prelucrari
- minimizarea numarului de comparari
- maximizarea preciziei
- maximizarea dimensiunii problemei de rezolvat.
Se iau seturile de date de test STD1, STD2, STD3, ...., STDK si structurile de date S1, S2, S3,...., SH. Se scriu variante de program pentru rezolvarea problemei folosind in fiecare varianta Vi structura de date Si.
Rezulta un tabel cu K linii si H coloane.
Se completeaza cu datele necesare criteriului dupa ce s-au efectuat rularile.
Se calculeaza dupa ce s-au efectuat toate rularile nivelul criteriului de optim pentru fiecare varianta de program.
Se alege varianta care raspunde cel mai bine criteriului.
Tot timpul se va specifica modalitatea in care a fost aleasa varianta.
In acest fel se va arata ca structura de date Soptim conduce la cele mai bune rezultate daca sunt respectate conditiile specificate deja.
Daca apare o noua structura de date SH+1 se completeaza tabelul cu o noua coloana.
Se ruleaza si aceasta varianta cu seturile de date de test considerate STD1, STD2, STD3, ...., STDK, se calculeaza acelasi nivel de performanta si valoarea obtinuta se compara cu valoarea corespunzatoare solutiei optime.
Daca se obtine o valoare mai buna, structura SH+1 devine optima.
In caz contrar structura Soptim ramane in continuare cea mai buna.

in lucru acum....



afisat azi 14 decembrie 2008 ora 23,00

REVENIRE