EAD PILHA - DEFINIÇÃO
|
|
- Igor Neves Carvalhal
- 6 Há anos
- Visualizações:
Transcrição
1 EAD PILHA - DEFINIÇÃO Os seus elementos são processados pela ordem inversa à ordem de chegada: - o último elemento a entrar na Pilha é o primeiro a sair (LIFO Last In First Out ). Qualquer operação que se pretenda efetuar será realizada no topo da Pilha Elem3 Topo Elem2 Elem1 Inserção de um novo elemento na pilha consiste em - acrescentar este elemento no topo da pilha; Remoção de um elemento da pilha - só é possível realizar-se se a pilha não estiver vazia, - consiste em retirar o elemento que se encontra no topo da pilha, - passa o elemento que está a seguir ao topo, caso exista, a ser o topo de pilha. Pilha vazia - acontece quando é removido o último elemento da pilha, - apenas é possível realizar operações de inserção de elementos na pilha. 1
2 EAD Pilha - Definição axiomática Estrutura Pilha (Elemento) CriarPilha (Elemento) Pilha PilhaVazia (Pilha) 1 (verdadeiro) ou 0 (falso) Push (Elemento, Pilha) Pilha Pop (Pilha) Pilha TopoPilha (Pilha) Elemento tais que S Pilha, Elem Elemento sejam PilhaVazia(Criar(Elem)) = 0 (falso) PilhaVazia(Push(Elem, S)) = 0 (falso) Pop(CriarPilha(Elem)) = (pilha vazia) Pop(Push(Elem, S)) = S Pop(S) = Se PilhaVazia(S) Então ERRO Senão S - TopoPilha(S) TopoPilha(Criar(Elem)) = Elem TopoPilha(Push(Elem, S)) = Elem TopoPilha(S) = Se PilhaVazia(S) Então ERRO Senão TopoPilha(S) Fim Pilha 2
3 EAD Pilha - Operações básicas - Criar uma Pilha (com um Elemento): CriarPilha (Elemento) - Verificar se uma Pilha está vazia: PilhaVazia (Pilha) - Inserir um Elemento numa Pilha: Push (Elemento, Pilha) - Remover elemento de uma Pilha: Pop (Pilha) - Consultar uma Pilha: TopoPilha (Pilha). EAD Pilha - Implementação usando listas - Armazenamento - sequencial (usando vetores), ou - não sequencial (usando listas ligadas). - Neste documento, a implementação é através de listas ligadas simples, as quais são simuladas com vetores. - Implementação usando listas ligadas simples: - apenas se utiliza um ponteiro associado ao topo da pilha, - este ponteiro é o índice do nodo do vetor que contém o elemento do topo da pilha. 3
4 EAD PILHA - ARMAZENAMENTO NÃO SEQUENCIAL COM VETORES Indicador de topo da pilha - índice do nodo com o elemento mais recente da pilha, - será o primeiro a ser removido, - quando nulo (0) significa que a pilha está vazia. Uma pilha nunca está cheia, - pode é não haver memória suficiente para guardar um novo elemento 4
5 Estrutura de dados: - Pilha é um vetor em que cada componente (nodo) é composto por 2 campos: - Elemento (informação a tratar), que pode ser um tipo de dados - não estruturado básico (inteiro, real, caracter,...), ou - estruturado (vetor, matriz, registo,...); se o tipo de dados é um registo, então é composto por um ou mais subcampos (dependendo do volume de informação a tratar) em que um deles pode funcionar como Chave; - Prox, é um número inteiro associado ao índice do nodo que o segue na pilha (o sucessor); - Topo (índice do nodo do vetor associado ao topo da pilha) - Representação de um nodo da pilha: Nodo Elemento Prox Informação Sucessor 5
6 Exemplo: Pilha em que o elemento de cada nodo é um inteiro. Representação gráfica: Topo Estrutura de dados: Pilha(k) = struct { Elemento, Prox }, k = 1,... Pilha é um tipo de dados estruturado, mais especificamente um registo (estrutura); Elemento é um tipo de dados não estruturado básico (inteiro). Topo = 3 Pilha Elemento Prox Implementação em MatLab: TopoPilha(Pilha) = 16 6
7 Operações auxiliares sobre uma EAD Pilha: - Criar um nodo de uma Pilha [CriarNodo - EAD Lista] - Determinar o tamanho de uma Pilha [TamanhoLista - EAD Lista] - Libertar/destruir um nodo de uma Pilha [LibertarNodoLista - EAD Lista] Operações básicas sobre uma EAD Pilha: - Criar uma Pilha (com um elemento) [CriarLista - EAD Lista] - Verificar se uma Pilha está vazia [ListaVazia - EAD Lista] - Inserir um novo elemento numa Pilha (no topo) [InserirInicioLista - EAD Lista] - Remover um elemento de uma Pilha (o do topo) [remoção específica] - Consultar um elemento de uma Pilha (o do topo) [consulta específica] Operações específicas sobre os elementos de uma Fila: - Criar um elemento de uma Pilha (CriarElemento - Exemplos de EAD Lista) - Mostrar um elemento de uma Pilha (MostrarElemento - Exemplos de EAD Lista) 7
8 Criar um nodo de uma Pilha a partir de um elemento Nota: - operação usada para criar um nodo com um elemento para posterior inserção numa pilha - função igual a "CriarNodo" da EAD Lista Parâmetros: Entrada: informação referente a um elemento (Elem) Saída: um nodo isolado composto pelo elemento fornecido e sem sucessor (Nodo) Função implementada em MatLab (iterativa): function [Nodo] = CriarNodo (Elem) Nodo.Elemento = Elem; Nodo.Prox = 0; 8
9 Determinar o tamanho de uma pilha Notas: - operação para determinar o número de elementos da pilha, o qual é usado na operação para inserir um elemento numa pilha, para atualizar o tamanho do vetor da pilha - função igual a "TamanhoLista" da EAD Lista Parâmetros: Entrada: pilha (Pilha) e topo da pilha (Topo) Saída: tamanho (quantidade de elementos) da pilha (tampilha) Função implementada em MatLab: function [tampilha] = TamanhoPilha (Pilha, Topo) k = Topo; tampilha = 0; while k ~= 0 tampilha = tampilha + 1; k = Pilha(k).Prox; end; 9
10 Libertar um nodo de uma Pilha Notas: - operação usada para libertar um nodo do vetor da pilha, após remoção da pilha - função igual a "LibertarNodoLista" da EAD Lista Parâmetros: Entrada: pilha (Pilha) e topo da pilha (Topo) Saída: vetor da pilha sem o nodo libertado (Pilha) e topo da pilha atualizado (Topo) Função implementada em MatLab: Nota: TamanhoPilha é uma operação auxiliar da EAD Pilha function [Pilha, Topo] = LibertarNodoPilha (Pilha, Topo) tam = TamanhoPilha(Pilha, Topo); % determinar o número de elementos da pilha if tam == 0 return; end; % determinar o nodo a libertar (indnodo), que tem no seu campo Prox o valor -1 indnodo = 1; while indnodo <= tam & Pilha(indNodo).Prox ~= -1 indnodo = indnodo + 1; end; 10
11 if indnodo > tam % se o índice do nodo a libertar é o último do vetor Pilha(indNodo) = []; return; % então não existe nodo a libertar ou está no fim do vetor end; % a pilha tem um elemento a menos, mas o vetor da pilha mantém o nodo; % assim, este nodo deve ser libertado/retirado do vetor (isto é, eliminado) % primeiro: eliminar o nodo de posição indnodo do vetor Pilha(indNodo) = []; % segundo: atualizar os campos Prox dos nodos com valores maiores do que indnodo for i = 1:tam if Pilha(i).Prox > indnodo Pilha(i).Prox = Pilha(i).Prox - 1; end; end; % terceiro: atualizar o topo da pilha, Topo, se for um índice superior a indnodo if Topo >= indnodo Topo = Topo - 1; end; 11
12 Criar uma Pilha (com um elemento) Nota: - função igual a "CriarLista" da EAD Lista Parâmetros: Entrada: informação relativa a um elemento (Elem) Saída: pilha com um nodo (Pilha) e topo da pilha (Topo) Função implementada em MatLab: Nota: CriarNodo é uma operação auxiliar da EAD Pilha function [Pilha, Topo] = CriarPilha (Elem) Nodo = CriarNodo(Elem); Pilha(1) = Nodo; Topo = 1; 12
13 Verificar se uma Pilha está vazia Notas: - uma pilha está vazia se o topo é 0 - função igual a "ListaVazia" da EAD Lista Parâmetros: Entrada: topo da pilha (Topo) Saída: 1 (se a pilha está vazia) ou 0 (se a pilha não está vazia) Função implementada em MatLab: function [vazia] = PilhaVazia (Topo) if Topo == 0 vazia = 1; else vazia = 0; end; 13
14 Inserir um elemento numa Pilha (Push) Nota: - função igual a "InserirInicioLista" da EAD Lista Parâmetros: Entrada: elemento a inserir (Elem), pilha (Pilha) e topo da pilha (Topo) Saída: pilha com mais um elemento (Pilha) e topo da pilha atualizado (Topo) Função implementada em MatLab: Nota: TamanhoPilha é uma operação auxiliar da EAD Pilha function [Pilha, Topo] = Push (Elem, Pilha, Topo) Novo = CriarNodo(Elem); % construir um nodo com os dados de Elem indnovo = TamanhoPilha(Pilha, Topo) + 1; % índice do novo nodo no vetor da pilha Pilha(indNovo) = Novo; % acrescentar o novo nodo ao vetor da pilha Pilha(indNovo).Prox = Topo; % ligar o novo nodo à pilha Topo = indnovo; % atualizar o topo da pilha 14
15 Remover um elemento de uma Pilha (Pop) Notas: - operação que só pode ser aplicada a uma pilha não vazia; caso contrário, ocorrerá ERRO - equivalente a remover o elemento de uma lista, o qual está no início da lista Parâmetros: Entrada: pilha (Pilha) e topo da pilha (Topo) Saída: pilha com menos um nodo (Pilha) e topo da pilha atualizado (Topo) Função implementada em MatLab: Nota: LibertarNodoPilha é uma operação auxiliar da EAD Pilha function [Pilha, Topo] = Pop (Pilha, Topo) % remover o elemento que está no topo da pilha indnodo = Topo; Topo = Pilha(Topo).Prox; Pilha(indNodo).Prox = -1; % isolar e marcar o nodo a libertar % libertar o nodo que (ainda) está no vetor da pilha [Pilha, Topo] = LibertarNodoPilha(Pilha, Topo); 15
16 Consultar uma Pilha (TopoPilha) Notas: - operação que só pode ser aplicada a uma pilha não vazia; caso contrário, ocorrerá ERRO - equivalente a consultar o elemento de uma lista que está no início da lista Parâmetros: Entrada: pilha (Pilha) e topo da pilha (Topo) Saída: mostra toda a informação sobre o elemento do topo da pilha Função implementada em MatLab: Nota: MostrarElemento é uma operação específica do problema function [] = TopoPilha (Pilha, Topo) MostrarElemento(Pilha(Topo).Elemento); 16
17 Exemplo: Pilha em que o elemento de cada nodo é um inteiro. Estrutura de dados: Pilha(k) = struct { Elemento, Prox }, k = 1,... Pilha é um tipo de dados estruturado (neste caso, do tipo registo); Elemento é um tipo não estruturado básico (neste caso, do tipo inteiro). Operações específicas deste problema a implementar (funções em MatLab): function [Elem] = CriarElemento () Elem = input('inserir um inteiro: '); function [] = MostrarElemento(Elem) disp(elem); 17
- o primeiro elemento a entrar na fila é o primeiro a sair (FIFO First In First Out ).
EAD FILA - DEFINIÇÃO Os seus elementos são processados por ordem de chegada: - o primeiro elemento a entrar na fila é o primeiro a sair (FIFO First In First Out ). Algumas operações realizam-se na cabeça
Leia maisEAD ARVORE BINÁRIA - ARMAZENAMENTO NÃO SEQUENCIAL COM VETORES
EAD ARVORE BINÁRIA - ARMAZENAMENTO NÃO SEQUENCIAL COM VETORES Estrutura de dados: - Arvore é um vetor em que cada componente (nodo) é composto por 3 campos: - Elemento (informação a tratar), que pode ser
Leia maisEAD ARVORE BINÁRIA - ARMAZENAMENTO NÃO SEQUENCIAL COM VETORES
EAD ARVORE BINÁRIA - ARMAZENAMENTO NÃO SEQUENCIAL COM VETORES Árvores Binárias de Pesquisa (ABP) - Definição Árvore binária em que os elementos dos seus nodos têm associado uma chave, que - determina a
Leia maisLista com saltos - generalidades
Lista com saltos - generalidades - Foram propostas em 1989 por William Pugh, professor da Universidade de Maryland; - Permitem operações de consulta, inserção e remoção mais eficientes do que as listas
Leia maisUNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 5 Pilhas
UNIP - Ciência da Computação e Sistemas de Informação Estrutura de Dados AULA Pilhas Estrutura de Dados A Estrutura de Dados Pilha Pilha é uma estrutura de dados usada em programação, que tem uma regra
Leia maisPilhas. ser acessada somente por uma de suas extremidades. pelo topo. S Uma pilha é uma estrutura linear de dados que pode
Pilhas e Filas Pilhas Uma pilha é uma estrutura linear de dados que pode ser acessada somente por uma de suas extremidades. Uma pilha é uma lista LIFO (do inglês last-in-first out) o último a entrar é
Leia maisstruct Nodo { int struct Nodo typedef struct Nodo *PNodo; PNodo ConstruirPilha () { int PNodo Criar printf scanf while Push printf scanf return
Considere as declarações de Nodo e PNodo (adaptada dos apontamentos) seguintes: struct Nodo { int Elemento; struct Nodo *Ant; ; typedef struct Nodo *PNodo; Copiar para o ficheiro PilhaInteiros.h e adaptar
Leia maisAula 11 Pilha Dinâmica. prof Leticia Winkler
Aula 11 Pilha Dinâmica prof Leticia Winkler 1 Pilha Dinâmica (Dynamic Stack) Pilha implementada através de uma lista linear encadeada. É uma lista linear encadeada em que as operações de inserção e retirada
Leia maisPilhas e Filas. Nádia Félix e Hebert Coelho
Pilhas e Filas Nádia Félix e Hebert Coelho Vários slides foram adaptados de Nina Edelwais e Renata Galante Estrutura de Dados Série de Livros Didáticos - Informática - UFRGS Pilhas e filas Listas lineares
Leia maisESTRUTURA DE DADOS (TCC )
ESTRUTURA DE DADOS (TCC-00.319) Listas lineares Pilhas e Filas Cristina Boeres 2 Manipulando listas lineares! Dependendo do problema a ser resolvidos, existem duas formas especiais (que veremos aqui no
Leia maisEstrutura de Dados. Carlos Eduardo Batista. Centro de Informática - UFPB
Estrutura de Dados Carlos Eduardo Batista Centro de Informática - UFPB bidu@ci.ufpb.br Listas e Filas Estruturas de Dados 2 Estrututuras de dados lineares Pilhas (stack) Estrutura de dados onde a inserção
Leia maisUniversidade Estadual Paulista Júlio de Mesquita Filho UNESP
Introdução à Computação II AULA 16 BCC Noturno - EMA896115B Prof. Rafael Oliveira olivrap@gmail.com Universidade Estadual Paulista Júlio de Mesquita Filho UNESP Rio Claro 2014 (Sem 2) Estruturas de Dados
Leia maisEstruturas Compostas Parte II
Estruturas Compostas Parte II Filas e Pilhas Leonardo Tórtoro Pereira Slides fortemente baseados no material do professor Ricardo Farias: http://www.cos.ufrj.br/~rfarias/cos121/ Pilhas Pilhas Também conhecida
Leia maisPilhas e Filas Encadeadas. Algoritmos e Estruturas de Dados I
Pilhas e Filas Encadeadas Algoritmos e Estruturas de Dados I Pilha Lista linear: pilha Represente graficamente o funcionamento da pilha, representando a pilha vazia, a entrada e a saída de elementos Quais
Leia maisSCC Algoritmos e Estruturas de Dados I
SCC 202 - Algoritmos e Estruturas de Dados I TAD Pilha Lembrem...TADs são tipos definidos em termos de seu comportamento e não de sua representação (que pode variar na busca de eficiência) 12/8/2010 Pilha
Leia maisEstrutura de Dados II. Prof. Sérgio Portari
Estrutura de Dados II Prof. Sérgio Portari - 2016 Plano de Ensino EMENTA: Filas, Árvores e suas generalizações: árvores binárias, árvores de busca, árvores balanceadas, árvores B e B+. Aplicações de árvores
Leia mais1/36 LISTAS. Programação II
1/36 LISTAS Estrutura de Dados 2/36 Estrutura de Dados Definição - Uma Estrutura de Dados é: - uma coleção de tipos de dados, composta por tipos não estruturados básicos, tipos estruturados ou uma mistura
Leia maisInstituto Luterano de Ensino Superior de Ji-Paraná Curso Bacharelado em Informática Estrutura de Dados I Prof.: José Luiz A.
1 Instituto Luterano de Ensino Superior de Ji-Paraná Curso Bacharelado em Informática Prof.: José Luiz A. Duizith Procedimento Insere_Esquerda (Lista,Valor) Aloque(Aux) Se (Aux = Nil) Senao Aux.Dado Valor
Leia maisEstruturas de Dados Aula 11: TAD Pilha
Estruturas de Dados Aula 11: TAD Pilha Fontes Bibliográficas Livros: Projeto de Algoritmos (Nivio Ziviani): Capítulo 3; Introdução a Estruturas de Dados (Celes, Cerqueira e Rangel): Capítulo 10; Estruturas
Leia mais10.1. Aula 10: Pilhas. O conceito de pilha. Algoritmos de inserção e remoção. Exemplo: Notação Polonesa
10.1 Aula 10: Pilhas O conceito de pilha Algoritmos de inserção e remoção Exemplo: Notação Polonesa 10.2 Pilhas Uso eficiente de listas: inserções e remoções não devem acarretar movimentação de nós. A
Leia maisCES-11. Pilhas Definição Operações Filas. Operações Deques. Definição. Operações
CES-11 Pilhas Definição Operações Filas Definição Operações Deques Definição Operações PILHAS, FILAS E DEQUES As listas lineares admitem inserção e eliminação em qualquer posição. Pilhas, filas e deques
Leia maisS U M Á R I O. Definição de Estrutura de Dados. Vetores. Listas Ligadas. Pilhas. Filas
ESTRUTURA DE DADOS DEBORAH FERREIRA S U M Á R I O Definição de Estrutura de Dados 1 Vetores 2 Listas Ligadas 4 Pilhas 6 Filas 8 D E F I N I Ç Ã O D E E S T R U T U R A D E D A D O S Estruturas de dados
Leia mais1. Listas sequenciais versus listas ligadas. Lista sequencial
Alocação Dinâmica Listas Ligadas 1. Listas sequenciais versus listas ligadas Lista sequencial Uma lista sequencial é um conjunto de elementos contíguos na memória. Um vetor é o melhor exemplo de lista
Leia maisEstrutura de Dados: Aula 3 - Linguagem C
Estrutura de Dados: Aula 3 - Linguagem C Uso de Memória Alocação de memória Estática Ocorre em tempo de compilação no momento em que se define uma variável ou estrutura é necessário que se definam seu
Leia maisESTRUTURAS DE DADOS E ALGORITMOS II ANTONIO RAMOS DE CARVALHO JÚNIOR PILHAS
ESTRUTURAS DE DADOS E ALGORITMOS II ANTONIO RAMOS DE CARVALHO JÚNIOR PILHAS TEORIA CONJUNTO ORDENADO DE ITENS NO QUAL NOVOS ITENS PODEM SER INSERIDOS E A PARTIR DO QUAL PODEM SER ELIMINADOS ITENS EM UMA
Leia maisstruct Nodo { int struct Nodo struct Nodo typedef struct Nodo *PNodo; int ConstruirLista (PNodo *H, PNodo *T) { int Criar
struct Nodo { int Elemento; struct Nodo *Prox; struct Nodo *Ant; ; typedef struct Nodo *PNodo; Copiar para o ficheiro ListasLigadasDuplas.h e adaptar as funções associadas às seguintes operações: Criar;
Leia maisListas Estáticas. Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista
Listas Estáticas SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de
Leia maisListas Estáticas. SCC Algoritmos e Estruturas de Dados I. Prof. Fernando V. Paulovich. *Baseado no material do Prof.
Listas Estáticas SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de
Leia maisEstruturas de Dados Filas
Estruturas de Dados Filas Roteiro Introdução Definição de Fila (Queue) Aplicações Operações sobre Fila Implementação de Fila Com vetores Com listas encadeadas Exercícios Introdução Estamos acostumados
Leia maisÍndice. Capítulo 3 Estrutura de Dados sequencial com armazenamento não sequencial
Índice i Índice Capítulo 3 Estrutura de Dados sequencial com armazenamento não sequencial 1. Listas ligadas armazenamento não sequencial... 1 1.1. Nodos e ligações... 1 1.2. Início duma lista... 2 1.3.
Leia maisIntrodução a Programação. Tipos Abstratos de Dados Implementando Pilha e Fila
Introdução a Programação Tipos Abstratos de Dados Implementando Pilha e Fila Abstração Abstração é o processo ou resultado de generalização por redução do conteúdo da informação de um conceito ou fenômeno
Leia mais08/08/2011. Pilha. SCC0202 Algoritmos e Estruturas de Dados I. Prof. Thiago A. S. Pardo. Pilha. O que é? Para que serve?
Pilha SCC0202 Algoritmos e Estruturas de Dados I Prof. Thiago A. S. Pardo Pilha O que é? Para que serve? 2 1 Rotina A 1 print A 2 call C 3 call B 4 call D Rotina B 1 call C 2 print B 3 call D 4 call C
Leia maisAula 5 e 6 Pilhas e suas Aplicações. prof Leticia Winkler
Aula 5 e 6 Pilhas e suas Aplicações prof Leticia Winkler 1 Definição de Pilha (Stack) São estruturas de dados do tipo LIFO (last-in first-out) - o último elemento a ser inserido, será o primeiro a ser
Leia maisListas. Aula 01. DPEE 1038 Estrutura de Dados para Automação Curso de Engenharia de Controle e Automação Universidade Federal de Santa Maria
Engenharia de CONTROLE e AUTOMAÇÃO Listas Aula 01 DPEE 1038 Estrutura de Dados para Automação Curso de Engenharia de Controle e Automação Universidade Federal de Santa Maria beltrame@mail.ufsm.br 1/ Sumário
Leia maisLista Ligada Linear - Retirar elemento
Lista Ligada Linear - Retirar elemento Pretende-se retirar o elemento com valor h da lista: Para isso é necessário modificar o valor do ponteiro para a caixa anterior à do elemento a ser retirado da lista:
Leia maisINF 1007 Programação II
INF 1007 Programação II Aula 13 Pilhas Edirlei Soares de Lima Pilha Uma pilha é uma estrutura de dados dinâmica na qual novos elementos são sempre inseridos no topo da pilha e acessados
Leia maisAlgoritmos de pesquisa
Define-se pesquisa como a operação que permite encontrar ou concluir que não existe, um dado elemento num dado conjunto. A pesquisa de um elemento pode ser feita num conjunto ordenado ou não. Quando o
Leia maisUniversidade Federal do Ma Curso de Ciência da Computação
Universidade Federal do Ma Curso de Ciência da Computação Estrutura de Dados Prof. Anselmo C. de Paiva Depto de Informática Limitações dos vetores Vetores Simples, Rápidos Mas, é necessário especificar
Leia maisPilhas Acesso. Pilha. Fila. Listas lineares especiais. Pilhas e Filas. Listas lineares especiais mais usuais. Disciplina restrita
Listas lineares especiais s Acesso consulta inserção remoção Disciplina restrita de acesso Disciplina restrita acesso permitido somente em alguns nós Listas lineares especiais mais usuais LIFO Last In
Leia maisMatrizes Esparsas. Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista
Matrizes Esparsas SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto
Leia maisAula 14 Listas Duplamente Encadeadas. prof Leticia Winkler
Aula 14 Listas Duplamente Encadeadas prof Leticia Winkler 1 Lista Duplamente Encadeada É um tipo de lista encadeada que pode ser vazia (NULL) ou que pode ter um ou mais nós, sendo que cada nó possui dois
Leia maisPilha. SCC Algoritmos e Estruturas de Dados I. Prof. Fernando V. Paulovich. *Baseado no material do Prof. Gustavo Batista
Pilha SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências
Leia maisAlocação Seqüencial VAL MAX TOPO
306 Alocação Encadeada Como vimos, uma fila nada mais é do que uma lista com uma disciplina de acesso. Logo, podemos nos utilizar de todos os conceitos vistos em listas para implementarmos filas. Por exemplo,
Leia maisFICHA 8 PILHAS E FILAS
ESTRUTURAS DE DADOS E ALGORITMOS Departamento de Engenharia Eletrotécnica e de Computadores Faculdade de Ciências e Tecnologia da Universidade de Coimbra FICHA 8 PILHAS E FILAS 8.1. Objetivos Objetivos
Leia maisPilha. SCC-202 Algoritmos e Estruturas de Dados I. Lucas Antiqueira
Pilha SCC-202 Algoritmos e Estruturas de Dados I Lucas Antiqueira Pilha O que é? Para que serve? 2 Problema: chamada de sub-rotinas Rotina A 1 print A 2 call C 3 call B 4 call D 5 return Rotina B 1 call
Leia maisProf. Jesus José de Oliveira Neto
Prof. Jesus José de Oliveira Neto É uma das estruturas de dados mais simples A idéia fundamental da pilha é que todo o acesso a seus elementos é feito através do seu topo. Assim, quando um elemento novo
Leia maisFilas Implementação Sequencial
SCE 202 182 Algoritmos e Estruturas de Dados I Filas Implementação Sequencial Conceito Coleção ordenada de itens (lista ordenada) em que a inserção de um novo item se dá em um dos lados no fim e a remoção
Leia maisUNIVERSIDADE DA BEIRA INTERIOR
UNIVERSIDADE DA BEIRA INTERIOR Algoritmos e Estruturas de Dados - Bioengenharia 2º Semestre Exame Especial Resolução 19/07/2013 A. [4.75 val] Algoritmos de ordenação e de pesquisa (usando memória estática
Leia maisINF1007 Programação 2 9 Pilhas. (c) Dept. Informática - PUC-Rio 1
INF1007 Programação 2 9 Pilhas (c) Dept. Informática - PUC-Rio 1 Tópicos Principais Introdução Interface do tipo pilha Exemplo de uso: verificação de expressões Implementação de pilha com lista encadeada
Leia maisUniversidade de São Paulo
Universidade de São Paulo Instituto de Ciências Matemáticas e Computação SCE5763 - Tipos e Estrutura de Dados - Luis Gustavo Nonato 2 a Lista de Exercícios 1. Seja A um array de inteiros. Escreva algoritmos
Leia mais16/11/2015 Lista Tipo de dado Lista - Implementação Lista - Implementação Lista - Implementação 3
Listas, pilhas e filas Profa. Vânia de Oliveira Neves Slides baseados no material da Profa. Graça Nunes Listas Lista Lista Uma Lista Linear é uma coleção ordenada de componentes de um mesmo tipo. Ela é
Leia maisLista: conceito, representação e algoritmos
Alocação seqüencial vs. encadeada Lista: conceito, representação e algoritmos Alocação seqüencial: elementos são alocados em seqüência; seqüência física Baseado no material de Thiago A. S. Pardo Algoritmos
Leia maisINE5408 Estruturas de Dados
INE5408 Estruturas de Dados Estruturas de Dados básicas utilizando Vetores - Introdução - Pilhas usando Vetores - Filas usando Vetores Estruturas de Dados - Definição Estruturas de Dados é a disciplina
Leia maisEAD Árvore - representação usando listas ligadas
5.1. Definição - A pesquisa de um elemento numa árvore binária de pesquisa implica - fazer uma travessia da árvore até se encontrar o elemento procurado, ou - se concluir da sua inexistência. - As travessias
Leia maisFila e Deque. SCC Algoritmos e Estruturas de Dados I. Prof. Fernando V. Paulovich. *Baseado no material do Prof.
Fila e Deque SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências
Leia maisPilha e Fila. Pilha em C. Definir o registro que representará cada elemento da pilha.
1 Estrutura de Dados II Pilha e Fila Pilha em C Definir o registro que representará cada elemento da pilha. No início a pilha estará vazia, logo o ponteiro topo tem o valor NULL. As operações de inserção
Leia maisFilas Exemplo de Aplicação
Filas Exemplo de Aplicação Uma aplicação interessante para filas é a ordenação por distribuição, descrita a seguir. Seja uma lista l composta de n chaves, cada qual representada por um inteiro numa base
Leia maisEstruturas de Dados. Módulo 12 - Filas. 9/8/2005 (c) Dept. Informática - PUC-Rio 1
Estruturas de Dados Módulo 12 - Filas 9/8/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus (2004)
Leia maisSCC Algoritmos e Estruturas de Dados I
SCC 202 - Algoritmos e Estruturas de Dados I TAD Pilha Sequencial Estática e Encadeada Dinâmica 17 e 19/8/2010 Exercício: Implementação da pilha sequencial e estática Declaração em C escondendo a ED do
Leia maisAula 2 Listas Lineares Sequenciais. prof Leticia Winkler
Aula 2 Listas Lineares Sequenciais prof Leticia Winkler 1 Conteúdo Revisão de Vetor Definição Declaração Acesso dos Elementos Inicialização dos Elementos Exemplo Vetor e Função Lista Linear Operações com
Leia maisInstituto de C. Filas. Luis Martí Instituto de Computação Universidade Federal Fluminense -
Instituto de C Filas Luis Martí Instituto de Computação Universidade Federal Fluminense lmarti@ic.uff.br - http://lmarti.com Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução
Leia maisAlgoritmos e Estruturas de Dados II IEC013
Algoritmos e Estruturas de Dados II IEC013 Revisão: Listas Encadeadas Prof. César Melo Todos os créditos reservados ao professor Leandro Galvão Listas Encadeadas Listas encadeadas ou listas ligadas representam
Leia maisLista de Exercícios sobre Listas Implementadas por Encadeamento
Lista de Exercícios sobre Listas Implementadas por Encadeamento 1) Se você tem de escolher entre uma representação por lista encadeada ou uma representação usando posições contíguas de memória para um
Leia mais22/08/2011. Fila. SCC0202 Algoritmos e Estruturas de Dados I. Prof. Thiago A. S. Pardo. Fila. O que é? Para que serve?
Fila SCC0202 Algoritmos e Estruturas de Dados I Prof. Thiago A. S. Pardo Fila O que é? Para que serve? 2 1 Biblioteca Problema: automação de uma biblioteca Todos os livros devem ser cadastrados O sistema
Leia maisMétodos Computacionais. Listas Encadeadas
Métodos Computacionais Listas Encadeadas Vetores Declaração de vetor implica na especificação de seu tamanho Não se pode aumentar ou diminuir tamanho Outra alternativa no uso de vetores é alocar dinamicamente
Leia maisPilhas. Algoritmos e Estruturas de Dados I. José Augusto Baranauskas Departamento de Física e Matemática FFCLRP-USP
Pilhas Algoritmos e Estruturas de Dados I Nesta aula veremos o ADT pilha Uma pilha é usada em muitas situações tais como avaliação de expressões aritméticas, chamada e retorno de procedimentos e funções
Leia maisEstruturas de Dados - Filas
Estruturas de Dados - Filas Leandro Tonietto ltonietto@unisinos.br Algoritmos e Estruturas de Dados em C++ Unisinos http://www.inf.unisinos.br/~ltonietto/jed/aed/filas.pdf Abr-8 Uma fila (queue) é uma
Leia maisConceitos. Pilhas e Filas. Conceitos e Implementação em linguagem C. Maria Adriana Vidigal de Lima. Março
Conceitos e Implementação em linguagem C Março - 2009 1 Conceitos 2 Organização dos dados Em determinadas aplicações, as pilhas e filas representam estruturas de dados importantes, nas quais seus elementos
Leia maisASSOCIAÇÃO PARAIBANA DE ENSINO RENOVADO FACULDADE PARAIBANA DE PROCESSAMENTO DE DADOS ESTRUTURA DE DADOS
ASSOCIAÇÃO PARAIBANA DE ENSINO RENOVADO FACULDADE PARAIBANA DE PROCESSAMENTO DE DADOS ESTRUTURA DE DADOS INTRODUÇÃO O que é uma Estrutura de Dados (ED)?? Tipos de Dados? Estruturas de Dados e? Tipos Abstratos
Leia maisSCC 202 Algoritmos e Estruturas de Dados I. Pilhas (Stacks) (implementação dinâmica)
SCC 202 Algoritmos e Estruturas de Dados I Pilhas (Stacks) (implementação dinâmica) Operações alocação encadeada dinâmica typedef struct elem{ tipo_info info; struct elem *lig; tipo_elem; typedef struct{
Leia maisEstrutura de Dados e Algoritmos e Programação e Computadores II. Aula 4: Listas Estáticas e Dinâmicas
Estrutura de Dados e Algoritmos e Programação e Computadores II Aula 4: Listas Estáticas e Dinâmicas Listas Estáticas: com Vetores Dinâmicas: Listas Ligadas (com ponteiros) Variáveis e Métodos de Controle:
Leia maisEstruturas de Dados. Módulo 11 Pilhas. 9/8/2005 (c) Dept. Informática - PUC-Rio 1
Estruturas de Dados Módulo 11 Pilhas 9/8/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus (2004)
Leia maisProva 2 PMR3201 1o. semestre 2015 Prof. Thiago Martins
Prova PMR0 o semestre 0 Prof Thiago Martins Instruções: Escreva o nome e o número USP na folha de papel almaço ( pontos) Uma árvore binária de busca é uma árvore binária na qual para qualquer sub-árvore
Leia maisCapítulo 8: Abstrações de dados
Capítulo 8: Abstrações de dados Ciência da computação: Uma visão abrangente 11a Edition by J. Glenn Brookshear Copyright 2012 Pearson Education, Inc. Estruturas de dados básicas Matriz homogênea Matriz
Leia maisEstruturas de Dados Encadeadas
CURSO: Ciência da Computação DATA: / / 2016 PERÍODO: 4 o. PROFESSOR: Andrey DISCIPLINA: Técnicas Alternativas de Programação AULA: 14 APRESENTAÇÃO Na aula de hoje vamos apresentar e discutir conceitos
Leia maisPilhas e Filas. Livro Projeto de Algoritmos Nívio Ziviani Capítulo 3 Seção 3.2 e 3.3
Pilhas e Filas Livro Projeto de Algoritmos Nívio Ziviani Capítulo 3 Seção 3.2 e 3.3 http://www2.dcc.ufmg.br/livros/algoritmos/ PILHAS Pilha É uma lista linear em que todas as inserções, retiradas e, geralmente,
Leia maisFila e Deque. Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista
Fila e Deque SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências
Leia maisAlgoritmos e Estrutura de Dados. Aula 05 Estrutura de Dados: Listas (Parte II) Prof. Tiago A. E. Ferreira
Algoritmos e Estrutura de Dados Aula 05 Estrutura de Dados: Listas (Parte II) Prof. Tiago A. E. Ferreira Listas Seqüenciais Estática Seqüencial É implementada usando um vetor Deve-se determinar qual a
Leia maisRevisão de TDA, Pilhas e Filas
Revisão de TDA, Pilhas e Filas Professor: Santiago Viertel dcc2sv@joinville.udesc.br Sumário Tipos de Dados Abstratos Pilhas Conceito Pilha Estática Filas Conceito Filas Estáticas (FEMR, FEMI e FEC) Tipos
Leia maisPilha. SCC Algoritmos e Estruturas de Dados I. Prof. Fernando V. Paulovich. *Baseado no material do Prof. Gustavo Batista
Pilha SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências
Leia maisAula 3 Listas Lineares Sequenciais Ordenadas. prof Leticia Winkler
Aula 3 Listas Lineares Sequenciais Ordenadas prof Leticia Winkler 1 Listas Lineares Sequenciais Ordenadas Elementos da lista estão dispostos num vetor (contíguos na memória) e ordenado de acordo com alguma
Leia maisTabelas Hash. informação, a partir do conhecimento de sua chave. Hashing é uma maneira de organizar dados que:
Tabelas Hash Tabelas Hash O uso de listas ou árvores para organizar informações é interessante e produz bons resultados. Porem, em nenhuma dessas estruturas se obtém o acesso direto a alguma informação,
Leia maisÁRVORES BINÁRIAS DE BUSCA. Vanessa Braganholo Estruturas de Dados e Seus Algoritmos
ÁRVORES BINÁRIAS DE BUSCA Vanessa Braganholo Estruturas de Dados e Seus Algoritmos REFERÊNCIA Szwarcfiter, J.; Markezon, L. Estruturas de Dados e seus Algoritmos, 3a. ed. LTC. Cap. 4 INSTITUTO DE COMPUTAÇÃO
Leia maisPilhas. Prof. Rui Jorge Tramontin Jr. UDESC - Rui J. Tramontin Jr. 1
Pilhas Prof. Rui Jorge Tramontin Jr. UDESC - Rui J. Tramontin Jr. 1 Índice Introdução Operações de uma pilha Aplicações TAD da Pilha em C UDESC - Rui J. Tramontin Jr. 2 Introdução Pilha é uma lista na
Leia maisEstruturas de Dados em C++ Conceitos. Leandro Tonietto jun-09
Estruturas de Dados em C++ Conceitos Leandro Tonietto jun-09 Estruturas de dados Armazenamento de vários registros de um mesmo tipo em uma única estrutura. Como visto até então, usando array simples: int
Leia maisUniversidade Estadual de Mato Grosso do Sul Bacharelado em Ciência da Computação Algoritmos e Estruturas de Dados II Prof. Fabrício Sérgio de Paula
Universidade Estadual de Mato Grosso do Sul Bacharelado em Ciência da Computação Algoritmos e Estruturas de Dados II Prof. Fabrício Sérgio de Paula Tópicos Introdução Alocação sequencial Listas lineares,
Leia maisAlgoritmos e Estruturas de Dados I
Algoritmos e Estruturas de Dados I Prof. Daniel M. Martin (daniel.martin@ufabc.edu.br) Aula 8 Aplicação de Fila Calcular a distância entre pessoas no Facebook Aplicação de Fila Calcular a distância entre
Leia maisFILAS. As coisas de que uma fila é feita serão chamadas itens. Os itens podem ser números, strings, structs, etc., etc.
KATIA LIMA FILAS RAFAEL DA SILVA REIAS JEFFERSON DA SILVA OLIVEIRA RAFFAELA LEITE SANTANA EXISTEM MUITOS EXEMPLOS DE FILA NO MUNDO REAL: UMA FILA DE BANCO; NO PONTO DE ÔNIBUS; UM GRUPO DE CARROS AGUARDANDO
Leia maisprogramas = estrutura de dados + algoritmos
Algoritmos e Estruturas de Dados I1 Prof. Eduardo 1 1. INTRODUÇÃO O mundo tem mudado rapidamente com ajuda dos computadores. Podemos citar as pesquisas espaciais, o projeto genoma, os simuladores de vôo,
Leia maisAlgoritmos e Estruturas de Dados II IEC013
Algoritmos e Estruturas de Dados II IEC013 TAD, Pilhas e Filas Prof. César Melo Todos os créditos ao Prof. Leandro Galvão TAD: Definição SE programa = definição de um tipo de dados + operação sobre dados
Leia maisEstrutura de Dados II
Estrutura de Dados II Introdução à Estrutura de Dados www.aeciocosta.com.br aecio.costa@faculdadeguararapes.edu.br Estrutura de Dados Estrutura de dados é um modo particular de armazenamento e organização
Leia maisAula 7 e 8 Filas e suas Aplicações. Prof. Leticia Winkler
Aula 7 e 8 Filas e suas Aplicações Prof. Leticia Winkler 1 Definição de Fila (Queue) São estruturas de dados do tipo FIFO (first-in first-out) - o primeiro elemento a ser inserido, será o primeiro a ser
Leia maisExemplos. Alocação Dinâmica de Pilhas. Pilhas. Pilhas. Implementação Seqüencial X Encadeada. SCE 182 Algoritmos e Estruturas de Dados I
SCE 182 Algoritmos e Estruturas de Dados I Uma pilha é uma lista linear em que a inserção ou eliminação de elementos somente pode ocorrer em uma das extremidades, que é chamada de TOPO da PILHA. D C B
Leia mais