Difference between revisions of "Pilha de Inteiros (versão simples)"

From Wiki**3

 
Line 24: Line 24:
 
   int is_empty() { return st_top == -1; }
 
   int is_empty() { return st_top == -1; }
 
   int is_full()  { return st_top == MAXVALUE-1; }
 
   int is_full()  { return st_top == MAXVALUE-1; }
 +
 +
== Ver Também ==
 +
 +
* [[Pilha de Inteiros (controlo de falha)|Pilha de inteiros com retorno de falha]]

Revision as of 15:21, 27 May 2005

Neste exemplo, apresenta-se uma implementação simples de uma pilha de inteiros.

A pilha utiliza um vector para o armazenamento de dados.

 #define MAXVALUE 1000
 static int st_value[MAXVALUE];
 static int st_top = -1;

As funções push e pop inserem e removem items da pilha.

 void push(int value) {
   if (!is_full())
     st_value[++st_top] = value;
 }
 
 int pop() {
   if (!is_empty())
     return st_value[st_top--];
   return -1;
 }

Os predicados is_empty e is_full devolvem informação sobre o estado da pilha.

 int is_empty() { return st_top == -1; }
 int is_full()  { return st_top == MAXVALUE-1; }

Ver Também