Informatică Programare

Implementare stiva in C++

Implementarea unei stive în C++ se bazează pe principiul LIFO (Last In, First Out), unde elementele sunt adăugate și eliminate de la același capăt. Aceasta poate fi realizată folosind un array sau o listă înlănțuită, cu operații push (adăugare) și pop (eliminare).

Operații de bază

  • Push Adaugă un element în vârful stivei. Exemplu: dacă stiva are [1,2], push(3) dă [1,2,3].
  • Pop Elimină elementul din vârful stivei. Exemplu: pop() din [1,2,3] returnează 3 și lasă [1,2].
  • Top Returnează elementul din vârful stivei fără a-l elimina. Exemplu: top() pe [1,2,3] dă 3.

Implementare cu array

  1. 1
    Declarare class Stiva { int top; int capacitate; int* array; public: Stiva(int cap) { top = -1; capacitate = cap; array = new int[cap]; } };
  2. 2
    Funcția push void push(int x) { if (top < capacitate-1) { array[++top] = x; } }
  3. 3
    Funcția pop int pop() { if (top >= 0) { return array[top--]; } return -1; // sau aruncă excepție }

Asigură-te că verifici depășirea sau subdepășirea stivei în operațiile push și pop.

Mai multe din Programare