Pilha dinâmica Prof.° Jean Daniel Henri Merlin Andreazza Banco de Dados / Redes de Computadores Estrutura de Dados Pilha • São listas onde a inserção de um novo item ou a remoção de um item já existente se dá em uma única extremidade, no topo. • Pilhas são também conhecidas como listas LIFO (last in first out). Representação (estática) Pilha Vazia Insere(A) Insere(B) Retira(B) Insere(C) Retira (C) Retira(A) Estrutura com os dados que serão armazenados na pilha struct no { int informacao; no *anterior; ... }; Ponteiro principal da pilha no *topo; main(){ } Manipulação da pilha • Criar uma pilha vazia: NULL topo = NULL; TOPO • Empilhar: – Alocar novo nó – Novo nó (anterior) aponta para topo; – Topo aponta para o novo nó TOPO TOPO Manipulação da pilha NULL • Desempilhar: – Posicionar ponteiro auxiliar no topo – Posicionar o ponteiro topo para o anterior – Eliminar o auxiliar TOPO AUX TOPO Exercícios • • • • • Inserir novo elemento Remover um elemento Exibir a pilha toda Exibir o valor do topo Excluir toda a pilha