TDA-Vector

Imagine preview
(8/10 din 4 voturi)

Acest laborator prezinta TDA-Vector.
Mai jos poate fi vizualizat un extras din document (aprox. 2 pagini).

Arhiva contine 1 fisier doc de 4 pagini .

Iti recomandam sa te uiti bine pe extras si pe imaginile oferite iar daca este ceea ce-ti trebuie pentru documentarea ta, il poti descarca.

Fratele cel mare te iubeste, acest download este gratuit. Yupyy!

Domenii: Limbaje de Programare, Automatica, Calculatoare, Inginerie Aerospatiala

Extras din document

Pentru folosirea containerului vector se da antetul:

#include <vector>

TDA vector generalizeaza conceptul de tablou cu o dimensiune. Abstractizarea permite marirea sau micsorarea colectiei în cursul executiei.

Accesul la orice element se face în timp constant. Operatorul de indexare nu asigura verificarea indicelui (daca se încadreaza în domeniu).

Inserarea si stergerea la sfârsit se face în O(1), iar în celelalte pozitii în O(n).

Fiind un container parametrizat, la instantiere se declara:

vector<int> x(10,1); //vector de 10 intregi initializati cu 1

vector<double> y(20);//vector de 20 reali neinitializati

1. Operatii asupra TDA vector.

1.constructori

vector<T> v; //c-tor implicit

vector<T>v(int); //c-tor cu dimens. initializata

vector<T>v(int, T); //c-tor cu dimensiune si

//valoare initiala

vector<T>v(vec); //c-tor de copiere

2.acces la elemente

v[i] //elementul din pozitia i

v.front() //primul element

v.back() //ultimul element

3.inserari

v.push_back(T); //adaugare element la sfarsit

v.insert(iterator, T);//inserare element dupa iterator

v.swap(vector<T>); //interschimb cu alt vector

4.stergeri

v.pop_back(); //sterge ultimul element

v.erase(iterator); //sterge elementul indicat de iterator

v.erase(iterator, iterator); //sterge elementele din interval

Folosirea functiilor insert() si erase() invalideaza toti iteratorii.

5. dimensionari

v.capacity(); //memoria rezervata pt.vector

v.size(); //memoria ocupata de vector

v.resize(int, T);//schimbarea dimensiunii

v.reserve(); //realocare memorie pt.vector

v.empty(); //test vector vid

6. iteratori

vector<T>::iterator it; //declara un iterator

v.begin(); //iterator de pornire(la primul elem)

v.end(); //iterator de oprire(dupa ultimul)

2. Algoritmi generici.

//pune in intervalul[p,u) valoarea val

template <class FwdIt, class T>

void fill(FwdIt p,FwdIt u, const T& val)

//copiaza elementele din intervalul [p,u) la destinatia d,

//intoarce pozitia de dupa ultima

template<class InIt, class OutIt>

OutIt copy(InIt p, InIt u, OutIt d);

//determina prima pozitie i din intervalul[p,u)astfel ca *i<*j sa fie fals

template<class FwdIt>

FwdIt max_element(FwdIt p, FwdIt u);

//determina prima pozitie i din intervalul[p,u)astfel ca pr(*i,*j) sa fie fals

template<class FwdIt, class Pred>

FwdIt max_element(FwdIt p, FwdIt u, Pred pr);

Fisiere in arhiva (1):

  • Vector.doc