Escolar Documentos
Profissional Documentos
Cultura Documentos
Conceito:
“LIFO” (Last In / First Out) - Último-que-Entra / Primeiro-que-Sai.
· Todo acesso acontece no TOPO da PILHA, ou seja, em apenas
uma extremidade da estrutura;
· ED’s:
#define MAXPILHA 10
struct TpPilha
{ int TOPO;
char PILHA[MAXPILHA];
};
Entra Sai
Topo
Operações Associadas
® Inicialização da estrutura;
® Insere na pilha; (PUSH)
® Retira da pilha; (POP)
® Retorna elemento do TOPO;
® Verifica se PILHA cheia;
® Verifica se PILHA vazia;
Exibe Pilha.
Implementação em C e exemplo
//Obrigatório SEMPRE
void inicializa ( TpPilha &p ) 3
{ 2 TOPO = -1
p.TOPO = -1; 1
} 0
// Insere M, K, A
void insere ( TpPilha &p, char elem ) 3 3 3
{ 2 TOPO = 0 2 TOPO = 1 2 A TOPO = 2
p.PILHA[++p.TOPO] = elem;
1 1 K 1 K
}
0 M 0 M 0 M
return p.PILHA[p.TOPO--]; 1 K 1 K
} 0 M 0 M
return p.PILHA[p.TOPO]; 1 K
} 0 M