Estruta

837 palavras 4 páginas
Pilha (LIFO)
Uma pilha é uma coleção ordenada de itens na qual os itens podem ser inseridos e retirados a partir da última posição, chamada topo da pilha. A Figura 1 representa uma estrutura do tipo pilha.

A definição de um TAD Pilha indica que apenas três operações podem ser realizadas: empilhamento, desempilhamento e uma eventual verificação do elemento que está no topo da pilha. A representação anterior ilustra uma pilha cujo conteúdo do topo é o elemento E. Neste caso, quando um elemento é inserido, ele é inserido “sobre” E. A remoção de um elemento na pilha anterior eliminaria o elemento E da pilha.
Implementação de Pilha
Pode-se criar um TAD pilha utilizando a representação em array. A seguir é descrita a implementação de uma pilha. A definição de uma estrutura para pilha necessita de apenas dois membros, um campo chamado topo e um campo onde as informações são armazenadas representado por um array chamado dado. O campo topo é do tipo inteiro e representa o índice do topo na array.

Estrutura Pilha{ int topo = -1; int dado[];
} p;

Inicialmente o índice topo é inicializado com –1. Isto indica que a pilha está vazia. Desta forma pode-se implementar um teste para verificar se a pilha está vazia (teste de underflow) da seguinte forma:

Se (topo == -1) então retorne pilha vazia senão retorne pilha não vazia

A operação de inserção (empilhamento) pode ser facilmente implementada da seguinte forma:

empilha(p, 10) // Empilha o elemento 10 na pilha p Se p não está cheia então topo = topo +1;
p.dado[topo] = 10 senão “Informe Pilha Cheia.”

É importante verificar a relização do teste de “overflow” antes de efetivamente inserir o elemento na pilha. Este teste pode ser implementado da seguinte forma:

Se p.topo == tamanho de p.dado – 1 então
Retorne “pilha cheia”
Senão
Retorne “Pilha não Cheia”

A operação de remoção (desempilhamento) de um elemento também é muito simples:

desempilha(p) // Desempilha o elemento da

Relacionados

  • Estrutas
    502 palavras | 3 páginas
  • Estrutas Organizacionais
    2662 palavras | 11 páginas
  • Estruta E Analise
    795 palavras | 4 páginas
  • Estruta de Analise
    2182 palavras | 9 páginas
  • Estruta Empresarial
    525 palavras | 3 páginas
  • Edificios estruta aço
    531 palavras | 3 páginas
  • A Estruta Da D Vida Publica
    10165 palavras | 41 páginas
  • Atps análise e estruta das demonstrações financeiras
    2454 palavras | 10 páginas
  • Estruta e Organização das Células, Origem e Evolução das Células
    549 palavras | 3 páginas
  • Estruta TCE Faculdade Marista - produzido pela instituição e disponivel em seu site
    859 palavras | 4 páginas