Algoritmos e estrutura de dados
|
|
- Débora Cerveira Beppler
- 5 Há anos
- Visualizações:
Transcrição
1 Algoritmos e estrutura de dados Listas Marco A L Barbosa cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual 4.0 Internacional.
2 Conteúdo Listas Listas encadeadas Arranjos dinâmicos Comparações Filas Pilhas Referências
3 Listas
4 Listas Uma Lista é um tipo abstrato de dados usado para armazenar uma sequência de elementos x 0, x 1,..., x n 1 n é o tamanho da lista xi está na posição i (i-ésima posição) xi precede x j para todo i < j < n xi sucede x j para todo n > i > j Uma lista pode aumentar ou diminuir de tamanho Operações comuns em listas Buscar um elemento Consultar um elemento em uma posição Inserir um elemento no início ou no final da lista Inserir um elemento em uma posição Remover um elemento Remover um elemento no início ou no final da lista Remover um elemento de uma posição Etc 4 / 59
5 Listas encadeadas
6 Listas encadeadas Vamos supor que não existisse arranjos em Python Neste caso, como representar uma lista de elementos? 6 / 59
7 Listas encadeadas Vamos supor que não existisse arranjos em Python Neste caso, como representar uma lista de elementos? Criando um encadeamento de instâncias de estruturas 6 / 59
8 Listas encadeadas Considere a seguinte estrutura class No(Struct): Representa um Nó em uma lista encadeada, valor : Qualquer - é o valor armazenado no nó prox : No - é uma refer^encia para o próximo nó def init (self, valor, prox): self.init(valor, prox) Vamos criar um encadeamento de instâncias da classe No Chamamos esta estrutura de lista encadeada 7 / 59
9 Listas encadeadas >>> xs = No(10, None) >>> xs No(10, None) 8 / 59
10 Listas encadeadas >>> xs = No(5, xs) >>> xs No(5, No(10, None)) 9 / 59
11 Listas encadeadas >>> xs = No(19, xs) >>> xs No(19, No(5, No(10, None))) 10 / 59
12 Listas encadeadas Vamos implementar alguns operações de listas usando listas encadeadas Para isto, vamos definir um classe ListaEncadeada class ListaEncadeada(Struct): Representa uma lista encadeada. _primeiro : No - é uma refer^encia para o primeiro nó da lista _ultimo : No - é uma refer^encia para o último nó da lista def init (self): self.init() self._primeiro = None self._ultimo = None O campo ultimo será útil para implementar inserção no final 11 / 59
13 Listas encadeadas Lembre-se que campos com o nome iniciados com são campos internos. Os campos internos não são especificados na criação da instância e não podem ser acessados pelos clientes da classe. No caso da classe ListaEncadeada isto significa que o cliente da classe não pode alterar os campos primeiro e ultimo diretamente, esses campos são alterados através dos métodos (a seguir) definidos na classe 12 / 59
14 Listas encadeadas Representação 13 / 59
15 Listas encadeadas / Inserção Ideia geral da inserção Tratamento especial para inserção no início e fim 14 / 59
16 Listas encadeadas / Inserção no início Inserção no início Criar um nó com o novo elemento na frete do primeiro Atualizar o primeiro para o novo nó Se o último for igual a None, o último passa referenciar o primeiro Análise do tempo de execução A quantidade de operações não depende da quantidade de nós na lista Portanto, o tempo de execução é O(1) 15 / 59
17 Listas encadeadas / Inserção no início def insere_inicio(lista, v): ListaEncadeada, Qualquer -> None Insere o valor v no início da lista. Exemplos: >>> xs = ListaEncadeada() >>> insere_inicio(xs, 3) >>> xs._primeiro No(3, None) >>> xs._ultimo No(3, None) >>> insere_inicio(xs, 1) >>> xs._primeiro No(1, No(3, None)) >>> xs._ultimo No(3, None) >>> insere_inicio(xs, 27) >>> xs._primeiro No(27, No(1, No(3, None))) >>> xs._ultimo No(3, None) 16 / 59
18 Listas encadeadas / Inserção no início def insere_inicio(lista, v):... lista._primeiro = No(v, lista._primeiro) if lista._ultimo == None: lista._ultimo = lista._primeiro 17 / 59
19 Listas encadeadas / Definição de métodos Vamos transformar está função em um método Um método é uma função definida dentro de uma classe 18 / 59
20 Listas encadeadas / Definição de métodos Vamos transformar está função em um método Um método é uma função definida dentro de uma classe Vantagens Os dados da estrutura e as funções que operam nestes dados ficam na mesma unidade sintática (class) É possível ter métodos com o mesmo nome em classes diferentes Polimorfismo 18 / 59
21 Listas encadeadas / Definição de métodos Como fazer a mudança? Colocar a função dentro da classe Modificar o nome do primeiro parâmetro para self (mudar todas as ocorrências do nome dentro da função) Alterar as chamadas de funções do tipo funcao(x,...) para chamadas de métodos x.funcao(...) 19 / 59
22 Listas encadeadas / Definição de métodos Como fazer a mudança? Colocar a função dentro da classe Modificar o nome do primeiro parâmetro para self (mudar todas as ocorrências do nome dentro da função) Alterar as chamadas de funções do tipo funcao(x,...) para chamadas de métodos x.funcao(...) Como escolher entre função ou método? Quando o primeiro argumento for do tipo da classe, definir como método, caso contrário, como uma função Requer experiência Observe com atenção as diferenças nos 2 próximos slides 19 / 59
23 Listas encadeadas / Definição de métodos Definição de insere inicio como função class ListaEncadeada(Struct): # descriç~ao omitida def init (self): # corpo omitido def insere_inicio(lista, v):... >>> xs = ListaEncadeada() >>> insere_inicio(xs, 3) >>> xs._primeiro No(3, None) >>> xs._ultimo No(3, None) # restante dos testes omitidos lista._primeiro = No(v, lista._primeiro) if lista._ultimo == None: lista._ultimo = lista._primeiro 20 / 59
24 Listas encadeadas / Definição de métodos Definição de insere inicio como método class ListaEncadeada(Struct): # descriç~ao omitida def init (self): # corpo omitido def insere_inicio(self, v):... >>> xs = ListaEncadeada() >>> xs.insere_inicio(3) >>> xs._primeiro No(3, None) >>> xs._ultimo No(3, None) # restante dos testes omitidos self._primeiro = No(v, self._primeiro) if self._ultimo == None: self._ultimo = self._primeiro 21 / 59
25 Listas encadeadas / Definição de métodos De agora em diante vamos definir funções como métodos quando isto for adequado 22 / 59
26 Listas encadeadas / Inserção no fim Inserção no fim Criar um nó com o novo elemento Se a lista está vazia, atualizar o primeiro e último para o novo nó Caso contrário colocar o novo nó após o último e atualizar o último Análise do tempo de execução A quantidade de operações não depende da quantidade de nós na lista Portanto, o tempo de execução é O(1) 23 / 59
27 Listas encadeadas / Inserção no fim def insere_fim(self, v): ListaEncadeada, Qualquer -> None Inser v no final da lista Exemplos: >>> xs = ListaEncadeada() >>> xs.insere_fim(3) >>> xs._primeiro No(3, None) >>> xs._ultimo No(3, None) >>> xs.insere_fim(10) >>> xs._primeiro No(3, No(10, None)) >>> xs._ultimo No(10, None) >>> xs.insere_fim(20) >>> xs._primeiro No(3, No(10, No(20, None))) >>> xs._ultimo No(20, None) 24 / 59
28 Listas encadeadas / Inserção no fim def insere_fim(self, v):... p = No(v, None) if self._primeiro == None: self._primeiro = p self._ultimo = p else: self._ultimo.prox = p self._ultimo = p 25 / 59
29 Listas encadeadas / Remoção Ideia geral da remoção Tratamento especial para remoção no início e fim 26 / 59
30 Listas encadeadas / Remoção no início Remoção no início Alterar o primeiro para referenciar o próximo do primeiro Se o novo primeiro é None, isto é, a lista ficou vazia, atualizar o último para None Análise do tempo de execução A quantidade de operações não depende da quantidade de nós na lista Portanto, o tempo de execução é O(1) 27 / 59
31 Listas encadeadas / Remoção no início # Veja os testes completos no arquivo listas.py def remove_inicio(self): ListaEncadeada -> Qualquer Remove o primeiro elemento da lista e devolve o valor removido. Lança uma exceç~ao se a lista estiver vazia. >>> xs = ListaEncadeada() >>> xs.insere_inicio(3) >>> xs.insere_inicio(5) >>> xs.remove_inicio() 5 >>> xs._primeiro No(3, None) >>> xs._ultimo No(3, None) >>> xs.remove_inicio() 3 >>> xs._primeiro == None True >>> xs._ultimo == None True 28 / 59
32 Listas encadeadas / Remoção no início # Veja os testes completos no arquivo listas.py def remove_inicio(self):... if self._primeiro == None: raise Exception( lista vazia ) v = self._primeiro.valor self._primeiro = self._primeiro.prox if self._primeiro == None: self._ultimo = None return v 29 / 59
33 Listas encadeadas / Remoção no fim Remoção no fim Se a lista tem apenas um nó, remover do início Senão procurar o penúltimo nó e remover o próximo (que é o último) Atualizar o último Análise do tempo de execução Para encontrar o penúltimo é necessário visitar n 1 nós Portanto, o tempo de execução é O(n) 30 / 59
34 Listas encadeadas / Remoção no fim # Veja os testes no arquivo listas.py def remove_fim(self): ListaEncadeada -> None Remove o último elemento da lista e devolve o valor removido. Lança uma exceç~ao se a lista estiver vazia. if self._primeiro == None: raise Exception( lista vazia ) if self._primeiro == self._ultimo: return self.remove_inicio() # procura o penúltimo nó p = self._primeiro while p.prox!= self._ultimo: p = p.prox return self._remove_prox(p) 31 / 59
35 Listas encadeadas / Remoção no fim def _remove_prox(self, p): ListaEncadeada, No -> Qualquer Remove o próximo a partir de p e devolve o valor armazenado no n v = p.prox.valor p.prox = p.prox.prox if p.prox == None: self._ultimo = p return v 32 / 59
36 Listas encadeadas / Consulta e alteração por posição Consulta e alteração por posição Iniciar uma referência p para o primeiro elemento Avançar p para o próximo até que chegue na posição especificada ou a lista acabe Se chegou na posição especificada, devolver ou alterar o valor do nó, caso contrário gerar um erro pois a posição está fora da lista Análise do tempo de execução No pior caso p avançara até acabar a lista, ou seja, vai passar por todos os nós Portanto, o tempo de execução é O(n) 33 / 59
37 Listas encadeadas / Consulta e alteração por posição Exemplo inicial >>> xs = ListaEncadeada() >>> xs.insere_fim(4); xs.insere_fim(2); xs.insere_fim(7) >>> xs.consulta(1) 2 >>> xs.consulta(2) 7 >>> xs.altera(1, 10) >>> xs._primeiro No(4, No(10, No(7, None))) Compare com o funcionamento da lista (pré-definida) do Python >>> xs = [4, 2, 7] >>> xs[1] 2 >>> xs[2] 7 >>> xs[1] = 10 >>> xs [4, 10, 7] 34 / 59
38 Listas encadeadas / Consulta e alteração por posição O que é mais conveniente xs[1] ou xs.consulta(1)? xs[1] = 10 ou xs.altera(1, 10)? A forma usada nas listas pré-definidas é mais conveniente Como fazer para tornar a consulta e alteração por posição em listas encadeada tão conveniente quanto das listas pré-definidas? Alterar o nome do método consulta para getitem Alterar o nome do método altera para setitem Estas alterações permite escrever xs[1] ao invés de xs.consulta(1) e xs[1] = 10 ao invés de xs.altera(1, 10) 35 / 59
39 Listas encadeadas / Consulta e alteração por posição Antes >>> xs = ListaEncadeada() >>> xs.insere_fim(4); xs.insere_fim(2); xs.insere_fim(7) >>> xs.consulta(1) 2 >>> xs.consulta(2) 7 >>> xs.altera(1, 10) >>> xs._primeiro No(4, No(10, No(7, None))) Depois >>> xs = ListaEncadeada() >>> xs.insere_fim(4); xs.insere_fim(2); xs.insere_fim(7) >>> xs[1] # equivalente a x. getitem (1) 2 >>> xs[2] 7 >>> xs[1] = 10 # equivalente a x. setitem (1, 10) >>> xs._primeiro No(4, No(10, No(7, None))) 36 / 59
40 Listas encadeadas / Consulta e alteração posição # Veja o código completo no arquivo listas.py def _consulta_pos(self, pos): ListaEncadeada, Natural -> Qualquer Devolve o No na posiç~ao pos. Lança uma exceç~ao se pos >= len(lista) ou pos < 0. p = self._primeiro i = pos while p!= None and i > 0: p = p.prox i = i - 1 if p!= None and i == 0: return p else: raise Exception( índice fora do intervalo ) 37 / 59
41 Listas encadeadas / Consulta e alteração posição # Veja o código completo no arquivo listas.py def getitem (self, pos): p = self._consulta_pos(pos) return p.valor def setitem (self, pos, v): p = self._consulta_pos(pos) p.valor = v 38 / 59
42 Listas encadeadas / Inserção em uma posição Insere em uma posição Se a posição for 0, inserir no início Senão, procurar o nó na posição anterior e insirir o novo valor após este nó Análise do tempo de execução Inserir no início é constante No no pior caso, todos os nós serão visitados se o índice estiver fora da faixa Portanto, o tempo de execução é O(n) 39 / 59
43 Listas encadeadas / Inserção em uma posição # Veja os exemplos no arquivo listas.py def insere(self, pos, v): ListaEncadeada, Natural, Qualquer -> None Insere v na posiç~ao pos. if pos == 0: self.insere_inicio(v) else: # procura o nó na posiç~ao anterior a inserç~ao p = self._consulta_pos(pos - 1) # insere após o nó encontrado self._insere_prox(p, v) 40 / 59
44 Listas encadeadas / Inserção em uma posição # Veja os exemplos no arquivo listas.py def _insere_prox(self, p, v): ListaEncadeada, No, Qualquer -> None Insere o v após o nó p. Exemplos: veja o método insere p.prox = No(v, p.prox) if p.prox.prox == None: self._ultimo = p.prox 41 / 59
45 Listas encadeadas / Remoção em uma posição Remoção em uma posição Se a posição for 0, remover do início Senão, procurar o nó na posição anterior e remover o próximo nó Análise do tempo de execução Remover no início é constante No pior caso, todos os nós serão visitados se o índice estiver fora da faixa Portanto, o tempo de execução é O(n) 42 / 59
46 Listas encadeadas / Remoção em uma posição def remove_pos(self, pos): ListaEncadeada, Natural -> Qualquer >>> xs = ListaEncadeada() >>> xs.insere_fim(5) >>> xs.insere_fim(2) >>> xs.insere_fim(4) >>> xs.insere_fim(8) >>> xs.remove_pos(2) 4 >>> xs.remove_pos(0) 5 >>> xs.remove_pos(1) 8 if pos == 0: return self.remove_inicio() p = self._consulta_pos(pos - 1) return self._remove_prox(p) 43 / 59
47 Listas encadeadas Veja no arquivo listas.py a definição de outras operações Verificar se um elemento está na lista Remover um elemento Contar a quantidade de nós Criar uma representação textual 44 / 59
48 Listas encadeadas Melhorias Manter também uma referência para o nó anterior Permite remover qualquer nó em O(1) (mais o tempo para encontrar o nó) Este tipo de lista é chamada de lista duplamente encadeada Criar um nó especial chamada sentinela que não faz parte da lista mas é o primeiro e último no encadeamento Permite de as operações de inserção e remoção sejam escritas de forma genérica, sem distinguir se a operação é no início ou fim da lista 45 / 59
49 Arranjos dinâmicos
50 Arranjos dinâmicos Os arranjos nas linguagens C e Pascal são estáticos. Eles não podem mudar de tamanho Os arranjos em Python são dinâmicos, eles podem mudar de tamanho Um arranjo dinâmico pode suportar as mesmas operações de uma lista, em outras palavras, um arranjo dinâmico pode implementar o tipo abstrato Lista Como implementar um arranjo dinâmico em termos de um arranjo estático? 47 / 59
51 Arranjos dinâmicos / Inserção Quando um elemento é inserido em uma posição i, todos os elementos x i+1, onde i + 1 < n, devem ser empurrados para a direita Se não houver espaço, um novo arranjo com tamanho maior deve ser criado Os valores do arranjo antigo são copiados para o novo arranjo O arranjo antigo é descartado 48 / 59
52 Arranjos dinâmicos / Remoção Quando um elemento é removido de uma posição i, todos os elementos x i+1, onde i + 1 < n, devem ser empurrados para a esquerda 49 / 59
53 Comparações
54 Comparações Lista Encadeada Arranjo dinâmico Consulta posição O(n) O(1) Inserir no início O(1) O(n) Inserir no fim O(1) O(1) Remover do O(1) O(n) início Remover do fim O(n) O(1) Inserir próximo Tempo de busca + O(1) O(n) 51 / 59
55 Filas
56 Filas Uma fila é como uma lista, mas as inserções e remoções deve seguir uma poĺıtica FIFO - First in, First out O primeiro a entrar é o primeiro a sair A operação de inserção também é conhecida como enfileira A operação de remoção também é conhecida como desenfileira 53 / 59
57 Filas Se existisse uma classe Fila, como gostaríamos que ela funcionasse? >>> f = Fila() >>> f.insere(3) >>> f.insere(5) >>> f.insere(8) >>> f.remove() 3 >>> f.insere(10) >>> f.insere(20) >>> f.remove() 5 >>> f.remove() 8 >>> f.remove() 10 >>> f.remove() 20 Veja o arquivo listas.py 54 / 59
58 Pilhas
59 Pilhas Uma pilha é como uma lista, mas as inserções e remoções deve seguir uma poĺıtica LIFO - Last in, First out O último a entrar é o primeiro a sair A operação de inserção também é conhecida como empilha A operação de remoção também é conhecida como desempilha 56 / 59
60 Pilhas Se existisse uma classe Pilha, como gostaríamos que ela funcionasse? >>> p = Pilha() >>> p.insere(3) >>> p.insere(5) >>> p.insere(8) >>> p.remove() 8 >>> p.insere(10) >>> p.insere(20) >>> p.remove() 20 >>> p.remove() 10 >>> p.remove() 5 >>> p.remove() 3 Veja o arquivo listas.py 57 / 59
61 Referências
62 Referências Projeto de algoritmos / Listas encadeadas. Paulo Feofiloff. Algoritmos: Teoria e prática. 3 a edição. Cormen, Thomas H at all. Capítulo 10. Algoritmos: Teoria e prática. 2 a edição. Cormen, Thomas H at all. Capítulo / 59
aula05 September 6, 2018
aula05 September 6, 018 In [1]: from IPython.display import HTML from IPython.display import Image 1 Filas de Prioridade 1. Estrutura de Dados do tipo pilha e fila são consideradas listas especializadas..
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 maisListas Lineares. Livro Projeto de Algoritmos Nívio Ziviani Capítulo 3 Seção 3.1
Listas Lineares Elerson R. S. Santos elerson@dcc.ufmg.br Livro Projeto de Algoritmos Nívio Ziviani Capítulo 3 Seção 3.1 http://www2.dcc.ufmg.br/livros/algoritmos/ Listas Lineares Uma das formas mais simples
Leia maisListas, conjuntos e dicionários
Listas, conjuntos e dicionários Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual
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 maisÁrvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo
PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo Árvore: estrutura composta por nós e arestas entre nós. As arestas são direcionadas ( setas ) e: um nó (e apenas um) é a raiz; todo nó
Leia maisLISTAS LINEARES. Estrutura de Dados
LISTAS LINEARES Lista Linear Definição: seqüência de zero ou mais elementos a 1,a 2,...,a n sendo a i elementos de um mesmo tipo n o tamanho da lista linear Propriedade fundamental: os elementos têm relações
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 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 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 maisPCC104 - Projeto e Análise de Algoritmos
PCC104 - Projeto e Análise de Algoritmos Marco Antonio M. Carvalho (baseado nas notas de aula do prof. Túlio A. M. Toffolo) Departamento de Computação Instituto de Ciências Exatas e Biológicas Universidade
Leia mais# Estrutura de Dados # Aula 06 Pilhas Estáticas. Prof. Leinylson Fontinele Pereira
# Estrutura de Dados # Aula 06 Pilhas Estáticas Prof. Leinylson Fontinele Pereira Na aula anterior... Filas Estáticas Sequencial # Propriedades # Operações fundamentais Introdução 3 O que vamos aprender?
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 maisEstruturas de Dados Pilhas, Filas, Listas
Estruturas de Dados Pilhas, Filas, Listas Fabio Gagliardi Cozman Thiago Martins PMR3201 Escola Politécnica da Universidade de São Paulo Estruturas de Dados Pilhas, Filas, Listas Introdução Estruturas de
Leia maisREVISÃO DE PILHAS E FILAS. Vanessa Braganholo Estruturas de Dados e Seus Algoritmos
REVISÃO DE PILHAS E FILAS Vanessa Braganholo Estruturas de Dados e Seus Algoritmos PILHAS E FILAS São tipos especiais de listas com disciplina restrita de acesso Acesso Consulta Inserção Remoção Disciplina
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 maisLP II Estrutura de Dados
LP II Estrutura de Dados Filas Estáticas Sequenciais Prof. José Honorato Ferreira Nunes honoratonunes@softwarelivre.org http://softwarelivre.org/zenorato/honoratonunes Filas - conceitos É uma lista linear
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 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 maisAlgoritmos e estrutura de dados
Algoritmos e estrutura de dados Introdução Marco A L Barbosa cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual 4.0 Internacional. Conteúdo A linguagem Python
Leia maisEstrutura de Dados. Diego Silveira Costa Nascimento
Estrutura de Dados Diego Silveira Costa Nascimento Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte diego.nascimento@ifrn.edu.br 31 de agosto de 2017 Ementa do Curso 1 Introdução
Leia maisAula de hoje. Listas. Sequências especiais. Introdução. Listas. Sequências. SCC Introdução à Programação para Engenharias
SCC 12 - Introdução à Programação para Engenharias Aula de hoje Introdução Sequências Classes e objetos Listas Listas Operações em listas Pilhas e filas Professor: André C. P. L. F. de Carvalho, ICMC-USP
Leia maisListas (Parte 1) Túlio Toffolo BCC202 Aula 09 Algoritmos e Estruturas de Dados I
Listas (Parte 1) Túlio Toffolo tulio@toffolo.com.br www.toffolo.com.br BCC202 Aula 09 Algoritmos e Estruturas de Dados I Ementa do Curso Tipos Abstratos de Dados / Alocação Dinâmica Análise de Algoritmos
Leia maisAula 07: Algoritmos de busca e Listas encadeadas
BC1424 Algoritmos e Estruturas de Dados I Aula 07: Algoritmos de busca e Listas encadeadas Prof. Jesús P. Mena-Chalco jesus.mena@ufabc.edu.br 1Q-2016 1 Busca de um elemento 2 Exemplo: Busca de um elemento
Leia maisImplementando subprogramas
Implementando subprogramas Linguagens de Programação Marco A L Barbosa cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual 4.0 Internacional. http://github.com/malbarbo/na-lp-copl
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 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 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 maisProva de Recuperação PMR3201 1o. semestre 2017 Prof. Thiago Martins
Prova de Recuperação PMR3201 1o. semestre 2017 Prof. Thiago Martins Instruções: Escreva o nome e o número USP na folha de papel almaço. Numere cada página. Indique o total de páginas na primeira página.
Leia maisBruno Hott Algoritmos e Estruturas de Dados I DECSI UFOP. Aula 07: Filas
Bruno Hott Algoritmos e Estruturas de Dados I DECSI UFOP Aula 07: Filas O que é uma fila? 1 4 3 2 Fila 1 2 3 4 O que é uma fila? 1 Fila 1 2 3 4 O que é uma fila? 1 2 Fila 2 3 4 O que é uma fila? 1 3 2
Leia maisEstrutura de dados - Listas Encadeadas
Estrutura de dados - Listas Encadeadas Prof. Leonardo Cabral da Rocha Soares leonardo.soares@newtonpaiva.br Centro Universitário Newton Paiva 25 de abril de 2019 Estrutura de dados - Listas Encadeadas
Leia maisListas Lineares. David Menotti Algoritmos e Estruturas de Dados II DInf UFPR
Listas Lineares David Menotti DInf UFPR Listas Lineares Uma das formas mais simples de interligar os elementos de um conjunto. Estrutura em que as operações inserir, retirar e localizar são definidas.
Leia maisUFSC-CTC-INE INE Estruturas de Dados. Pilhas. Prof. Ronaldo S. Mello 2002/2. Pilha
UFSC-CTC-INE INE5384 - Estruturas de Dados Pilhas Prof. Ronaldo S. Mello 2002/2 Pilha Uma pilha mantém uma seqüência de elementos dispostos um sobre o outro: pilha de livros pilha de caixas pilha de objetos
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 maisHeaps. Estrutura de Dados. Universidade Federal de Juiz de Fora Departamento de Ciência da Computação 1 / 35
Heaps Estrutura de Dados Universidade Federal de Juiz de Fora Departamento de Ciência da Computação 1 / 35 Conteúdo Introdução Definição de Heap Heap Binária Implementação com vetor Fila de Prioridades
Leia maisVariáveis e instruções de repetição
Variáveis e instruções de repetição Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual
Leia maisESTRUTURA DE DADOS FILAS SEQUENCIAIS
ESTRUTURA DE DADOS FILAS SEQUENCIAIS Prof. Dr. Daniel Caetano 2012-2 Objetivos Compreender o que é uma estrutura em fila Compreender sua aplicação Capacitar para implementar filas Atividade Estruturada!
Leia maisÁrvores Binárias de Busca (ABB) 18/11
Árvores Binárias de Busca (ABB) 18/11 Definição Uma Árvore Binária de Busca possui as mesmas propriedades de uma AB, acrescida da seguintes propriedade: Para todo nó da árvore, se seu valor é X, então:
Leia maisProva Substitutiva PMR3201 1o. semestre 2018 Prof. Thiago Martins
Prova Substitutiva PMR301 1o. semestre 018 Prof. Thiago Martins Instruções Escreva o nome e o número USP na folha de papel almaço. Numere cada página. Indique o total de páginas na primeira página. Os
Leia maisBCC202 - Estrutura de Dados I
BCC202 - Estrutura de Dados I Aula 08: Listas (Parte 1) ASN Universidade Federal de Ouro Preto, UFOP Departamento de Computação, DECOM Material elaborado com base nos slides do Prof. Reinaldo Fortes (curso
Leia maisLista Encadeada (Linked List)
Lista Encadeada (Linked List) As listas ou listas encadeadas são a estrutura de dados mais simples concebível excetuando-se naturalmente os arrays. Listas encadeadas nada mais são que uma seqüência de
Leia maisImplementação de subprogramas
Implementação de subprogramas Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual
Leia maisFilas. Prof. Túlio Toffolo BCC202 Aula 12 Algoritmos e Estruturas de Dados I
Filas Prof. Túlio Toffolo http://www.toffolo.com.br BCC202 Aula 12 Algoritmos e Estruturas de Dados I O que é uma fila? 1 4 2 3 Fila 1 2 3 4 TAD Fila Tipo Abstrato de dados com a seguinte característica:
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 maisDados compostos. Paradigma de Programação Funcional. Marco A L Barbosa
Dados compostos Paradigma de Programação Funcional Marco A L Barbosa cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual 4.0 Internacional. Conteúdo Estruturas
Leia maisListas Lineares Ordenadas
Listas Lineares Ordenadas Algoritmos e Estruturas de Dados I Nesta apresentação será apresentado o ADT lista linear ordenada Uma lista linear ordenada, ou simplesmente lista ordenada há uma ordem entre
Leia maisÁrvores Binárias de Busca
0. Um breve comentário sobre os algoritmos de busca em tabelas De uma maneira geral, realizam-se operações de busca, inserção e remoção de elementos numa tabela. A busca sequencial tradicional é O(N).
Leia maisAplicações de listas Outras estruturas
Aplicações de listas Outras estruturas SCC-22 Algoritmos e Estruturas de Dados I Lucas Antiqueira Grandes números 2 Grandes números Problema: lidar com números muito grandes Em C, inteiros (mesmo long
Leia maisProgramação II. Listas Encadeadas (Linked Lists) Bruno Feijó Dept. de Informática, PUC-Rio
Programação II Listas Encadeadas (Linked Lists) Bruno Feijó Dept. de Informática, PUC-Rio Vetores vs Estruturas Dinâmicas Vetores (arrays): Ocupa um espaço contíguo de memória Permite acesso randômico
Leia maisEstrutura de Dados. Estrutura de Dados Recursividade. Exemplo: 5! = 5 x 4! 4! = 4 x 3! 3! = 3 X 2! 2! = 2 x 1! 1! = 1 x 0!
Rafael D. Ribeiro, M.Sc. rafaeldiasribeiro@gmail.com http://www.rafaeldiasribeiro.com.br Exemplo: 5! = 5 x 4! 4! = 4 x 3! 3! = 3 X 2! 2! = 2 x 1! 1! = 1 x 0! Fatorial de 0 = 1 Recursividade 1 Recursividade
Leia maisAplicações de listas e outras estruturas
19/1/11 Aplicações de listas e outras estruturas SCC- Algoritmos e Estruturas de Dados I Prof. Thiago A. S. Pardo Grandes números Problema: lidar com números muito grandes Em C, inteiros (mesmo long int)
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 maisAplicações de listas e outras estruturas. SCC-502 Algoritmos e Estruturas de Dados I
Aplicações de listas e outras estruturas SCC-52 Algoritmos e Estruturas de Dados I Grandes números Problema: lidar com números muito grandes Em C, inteiros (mesmo long int) são limitados Como somar números
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 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 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 maisListas Lineares. continuando...
Listas Lineares continuando... 1 Listas! relembrando: listas lineares agrupa informações referentes aum conjunto de elementos que, de alguma forma, se relacionam entre si! Uma lista linear ou está vazia,
Leia maisBit (Binary Digit) é a menor unidade de armazenamento de informação dentro do computador; Byte é a união de 8 bits capaz de representar 256
Bit (Binary Digit) é a menor unidade de armazenamento de informação dentro do computador; Byte é a união de 8 bits capaz de representar 256 informações diferentes; Tipos Primitivos são implementados nas
Leia maisÁrvores Binárias de Busca (ABB) 18/11
Árvores Binárias de Busca (ABB) 18/11 Definição Uma Árvore Binária de Busca possui as mesmas propriedades de uma AB, acrescida da seguintes propriedade: Para todo nó da árvore, se seu valor é X, então:
Leia maisFundamentos da Programação
Fundamentos da Programação Segundo Teste 10 de Janeiro de 2014 09:00 10:30 Nome: Número: Esta prova, individual e sem consulta, tem 8 páginas com 12 perguntas. A cotação de cada pergunta está assinalada
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 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 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 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 maisMódulo: PYTHON. Felipe Oliveira
Módulo: PYTHON Felipe Oliveira Tudo Blzinha? https://pip.pypa.io/en/stable/installing/ Ctrl + S Variáveis Palavras reservadas! Operadores Aritméticos Operadores básicos Operação Operador adição +
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 maisAplicações de listas e outras estruturas. SCC-502 Algoritmos e Estruturas de Dados I
Aplicações de listas e outras estruturas SCC-52 Algoritmos e Estruturas de Dados I Grandes números Problema: lidar com números muito grandes Em C, inteiros (mesmo long int) são limitados Como somar números
Leia maisEstrutura de Dados Listas
Universidade Federal da Paraíba Centro de Informática Departamento de Informática Estrutura de Dados Listas 1 Tiago Maritan tiago@ci.ufpb.br Conteúdos Abordados O Conceito de Listas Listas com Representaçã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 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 maisProfessora Jeane Melo
Professora Jeane Melo Roteiro Lista Encadeada Alocação: Estática x Dinâmica O que são Ponteiros? Ponteiros Variáveis que Armazenam Endereços de Memória Mas, toda variável não é armazenada na memória? Ponteiros
Leia maisAlgoritmos e Estrutura de Dados II. Árvore. Prof a Karina Oliveira.
Algoritmos e Estrutura de Dados II Árvore Prof a Karina Oliveira kkco@dei.unicap.br Introdução Estruturas de dados lineares (pilha, fila) são estruturas que guardam coleções de elementos que são acessados
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 maisAplicações de vetores
O TAD Vetor O TAD Vetor extende a noção de arranjo (array) armazenando sequências de objetos arbitrários Um elemento pode ser acessado, inserido ou removido através da especificação de sua colocação (rank)
Leia maisProjeto de funções e instruções condicionais
Projeto de funções e instruções condicionais Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons
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 maisÁRVORES E ÁRVORE BINÁRIA DE BUSCA
ÁRVORES E ÁRVORE BINÁRIA DE BUSCA Prof. André Backes Definição 2 Diversas aplicações necessitam que se represente um conjunto de objetos e as suas relações hierárquicas Uma árvore é uma abstração matemática
Leia maisEstruturas de Dados I
Estruturas de Dados I Rodrigo Porfírio da Silva Sacchi rodrigosacchi@ufgd.edu.br 3410-2075 Aula 6: Listas Encadeadas e Alocação Dinâmica Listas Encadeadas e Alocação Dinâmica Alocação Seqüencial versus
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 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 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 maisFilas. Nesta aula veremos o ADT fila Em um computador existem muitas filas esperando pela impressora, acesso ao disco ou, num sistema timesharing,
Filas Nesta aula veremos o ADT fila Em um computador existem muitas filas esperando pela impressora, acesso ao disco ou, num sistema timesharing, pelo uso da CPU Algoritmos e Estruturas de Dados I José
Leia maisEstruturas de Dados Estruturas de Dados Fundamentais
Estruturas de Dados Estruturas de Dados Fundamentais Prof. Eduardo Alchieri Estruturas de Dados Fundamentais Todos os tipos abstratos de dados (pilhas, filas, deques, etc.) podem ser implementados usando
Leia maisFundamentos da Programação
Fundamentos da Programação Solução do Segundo Teste 18 de Janeiro de 2013 09:00 10:30 1. (2.0) Escolha a única resposta incorrecta para as seguintes questões. Cada resposta certa vale 1 valor e cada resposta
Leia maisÁrvores binárias de busca
Árvores binárias de busca Introdução à Ciência de Computação II Diego R. Amancio Baseado no material do Prof. Thiago A. S. Pardo Árvore binárias n Árvores de grau 2, isto é, cada nó tem dois filhos, no
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 maisNomes, vinculações e escopos
Nomes, vinculações e escopos Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual
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 maisESTRUTURAS DE DADOS E ALGORITMOS LISTA LIGADA
ESTRUTURAS DE DADOS E ALGORITMOS 1 LISTA LIGADA Adalberto Cajueiro Departamento de Sistemas e Computação Universidade Federal de Campina Grande LISTA LIGADA (LINKED LIST) É uma estrutura de dados em que
Leia maisDicionários. TAD Orientado a conteúdo
Dicionários TAD Orientado a conteúdo Dicionários efinição: Tipo abstrato de dados orientado a onteúdo. Contrasta com as PILHAs e FILAs que são orientadas a posição. perações implementadas: Inserir(d,x)
Leia maisEdital de Seleção 024/2017 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões
Edital de Seleção 024/2017 PROPESP/UFAM Prova de Conhecimento Caderno de Questões CANDIDATO: «Nome» INSCRIÇÃO: «Inscrição» Assinatura conforme identidade INSTRUÇÕES PARA O CANDIDATO: Verifique o seu nome
Leia maisFilas. Prof. Rui Jorge Tramontin Jr. UDESC - Rui J. Tramontin Jr. 1
Filas Prof. Rui Jorge Tramontin Jr. UDESC - Rui J. Tramontin Jr. 1 Índice Introdução Aplicações Implementação / Modelagem Operações de uma fila TAD da Fila em C UDESC - Rui J. Tramontin Jr. 2 Introdução
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 maisLISTAS ENCADEADAS OU NÃO- SEQÜENCIAIS. Estrutura de Dados
LISTAS ENCADEADAS OU NÃO- SEQÜENCIAIS Listas Lineares Como visto anteriormente, as operações básicas para o nosso TAD Lista Linear são: FLVazia Vazia Retira Insere Imprime A implementação através de arrays
Leia maisEdital de Seleção 023/2018 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões
Edital de Seleção 023/2018 PROPESP/UFAM Prova de Conhecimento Caderno de Questões CANDIDATO: INSCRIÇÃO: Assinatura conforme identidade INSTRUÇÕES PARA O CANDIDATO: Verifique o seu nome e o número da sua
Leia maisTabelas Hash O Que é uma Tabela Hash? O Que é uma Tabela Hash? O Que é uma Tabela Hash? Inserindo um Novo Registro. O Que é uma Tabela Hash?
Tabelas Hash O Que é uma Tabela Hash? Nesta aula são discutidos modos de armazenar informações em um vetor, e depois procurar por uma informação Tabelas Hash constituem uma abordagem comum para o problema
Leia maisProva 2 PMR2300 1o. semestre 2015 Prof. Thiago Martins
Prova PMR00 o. semestre 0 Prof. Thiago Martins Instruções: Escreva o nome e o número USP na folha de papel almaço.. ( pontos) Um heap binário é uma árvore binária completa (todos os níveis exceto o último
Leia mais