Informatică Programare

Cum se implementeaza o stiva in C?

O stivă în C se implementează ca o structură de date LIFO (Last In, First Out) folosind un vector și un indice pentru vârf. Elementele se adaugă și se elimină doar de la un singur capăt, numit vârful stivei.

Declarația structurii

  1. 1
    Definește structura struct Stiva { int v[100]; int top; };
  2. 2
    Inițializează stiva void init(Stiva *s) { s->top = -1; } // top = -1 indică stivă goală
  3. 3
    Verifică dacă e plină int isFull(Stiva *s) { return s->top == 99; } // Presupunem dimensiune maximă 100

Operații principale

  • Push (adaugă) void push(Stiva *s, int val) { if(!isFull(s)) { s->top++; s->v[s->top] = val; } }
  • Pop (elimină) int pop(Stiva *s) { if(s->top >= 0) { int val = s->v[s->top]; s->top--; return val; } return -1; // sau gestionează eroarea
  • Peek (vizualizează vârful) int peek(Stiva *s) { if(s->top >= 0) return s->v[s->top]; return -1; }

Testează implementarea cu operații simple, cum ar fi push(5), push(10), apoi pop(), pentru a verifica corectitudinea.

Mai multe din Programare