Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouÂngelo Rosario Alterado mais de 10 anos atrás
1
Prof.: Sergio Pacheco Estruturas de Dados I Prof.: Sergio Pacheco 1
2
2 Pilha encadeada; Sumário
3
Prof.: Sergio Pacheco Pilha 3 Implementação de pilha com lista; Usa ponteiro, o primeiro elemento da lista representa o topo da pilha; Cada novo elemento é inserido no início da lista e, conseqüentemente, sempre que solicitado, retiramos o elemento também do início da lista.
4
Prof.: Sergio Pacheco Pilha 4
5
Pilha – Criação de Nó (Inicialização de Pilha) 5 Criação do Nó cabeça
6
Prof.: Sergio Pacheco Pilha – Inserir um novo elemento no início da pilha 6 Inseri o novo elemento no inicio da lista (Pilha)
7
Prof.: Sergio Pacheco Pilha – Inserir um novo elemento no início da pilha 7 Inseri o novo elemento no inicio da lista (Pilha) void push (Pilha* p, float v){ p->prim = ins_ini(p->prim,v); }
8
Prof.: Sergio Pacheco Fila – Retirar Um novo nó na fila 8 No* ret_ini (No* l){ No* p = l->prox; free(l); return p; } float pop (Pilha* p){ float v; if (vazia(p)) { printf("Pilha vazia.\n"); exit(1); /* aborta programa */ } v = p->prim->info; p->prim = ret_ini(p->prim); return v; }
9
Prof.: Sergio Pacheco Pilha - Impressão 9 A rigor, pela definição da estrutura de pilha, só temos acesso ao elemento do topo. No entanto, para testar o código, pode ser útil implementarmos uma função que imprima os valores armazenados na pilha. /* imprime: versão com lista */ void imprime (Pilha* p) { No* q; for (q=p->prim; q!=NULL; q=q->prox) printf("%f\n",q->info); }
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.