Professional Documents
Culture Documents
Execuco de programas (estruturas de prioridade) Pilhas Pilhas como vetor Pilhas como Lista Encadeada TAD Exemplo: Calculadora com lgica polonesa
dibio@unb.br
Como os valores so carregados e guardados em ordem? Como as operaces so executadas na ordem? Qual estrutura organiza essa sequncia prioritria de tarefas? Como modelar tal estrutura?
dibio@unb.br
Pilhas
A idia fundamental da pilha que todo o acesso a seus elementos feito atravs do seu topo. Assim, quando um elemento novo introduzido na pilha, passa a ser o elemento do topo, e o nico elemento que pode ser removido da pilha o do topo. LIFO (Last In, First Out)
dibio@unb.br
Uso/aplicaces
Ex: O exemplo de utilizao de pilha mais prximo a prpria pilha de execuo da linguagem C. As variveis locais das funes so dispostas numa pilha e uma funo s tem acesso s variveis que esto no topo (no possvel acessar as variveis da funo locais s outras funes). Operaces ps-fixas Editores de texto ...
dibio@unb.br
dibio@unb.br
dibio@unb.br
dibio@unb.br
Operaes bsicas
criar uma estrutura de pilha; inserir um elemento no topo (push); remover o elemento do topo (pop); verificar se a pilha est vazia; liberar a estrutura de pilha.
dibio@unb.br
TAD em C
dibio@unb.br
dibio@unb.br
dibio@unb.br
Insero
dibio@unb.br
Remoo
dibio@unb.br
dibio@unb.br
dibio@unb.br
dibio@unb.br
dibio@unb.br
dibio@unb.br
Inserir elemento
dibio@unb.br
dibio@unb.br
dibio@unb.br
dibio@unb.br
dibio@unb.br
dibio@unb.br
Exemplo
dibio@unb.br
dibio@unb.br
dibio@unb.br
Exemplo
dibio@unb.br
Exemplo (empilhar)
dibio@unb.br
Exemplo
dibio@unb.br
Exemplo (desempilhar)
dibio@unb.br
cont...calcula
dibio@unb.br
Exemplo (programa)
dibio@unb.br
cont...programa
dibio@unb.br
Exemplo de uso
dibio@unb.br
Estender a funcionalidade da calculadora ps-fixa com operaces de: (- unrio), exponenciaco, raiz quadrada.
dibio@unb.br
Referncias
Celes, W.; Cerqueira, R. & Rangel, J.L. Introduco a Estruturas de Dados, Editora Campus (Elsevier), RJ, 2004. Cormen, T.; Leiserson, C. & Rivest, R. Algoritmos: teoria e prtica, Campus Editora, RJ, 2002. Tenenbaum, A.; Langsam, Y. & Augenstein, M. Estruturas de Dados usando C, Makron Books, RJ, 1995.
dibio@unb.br