Informatică Programare
Implementare stiva cu vector C++
O stivă implementată cu vector în C++ este o structură de date LIFO (Last In, First Out) care folosește un array dinamic pentru a stoca elemente. Operațiile principale sunt push (adăugare), pop (eliminare) și peek (vizualizare a elementului din vârf).
Componente cheie
- Vector Folosește std::vector din biblioteca standard pentru stocare dinamică, cu realocare automată.
- Indexul vârfului Poate fi gestionat implicit prin vector.size() - 1, fără a necesita o variabilă separată.
- Capacitate Vectorul se redimensionează automat când este plin, spre deosebire de un array static.
Implementare pas cu pas
- 1 Definirea clasei #include <vector> class Stiva { private: std::vector<int> elemente; public: void push(int val) { elemente.push_back(val); }
- 2 Metoda pop void pop() { if (!elemente.empty()) elemente.pop_back(); else cout << "Stiva goala"; }
- 3 Metoda peek int peek() { if (!elemente.empty()) return elemente.back(); else { cout << "Stiva goala"; return -1; } }
Testează întotdeauna dacă stiva este goală înainte de pop sau peek pentru a evita erorile.