Dicionários. Prof. César Melo
|
|
|
- Sophia Lima Castel-Branco
- 8 Há anos
- Visualizações:
Transcrição
1 Dicionários Prof. César Melo
2 Definição Estruturas que permitem a recuperação da informação a partir do seu valor; Contrasta com filas e pilhas que é posicional; Três operações: Inserção(k, d), chave k; remoção(k, d), chave x; busca(k, d), item associado a chave k;
3 As operações São classificados de acordo com as operações que implementam Estáticos; Somente Busca, e.g ED vetor Semi-estáticos; Inserção e Busca, e.g Hash com endereçamento aberto; Dinâmicos. Todas, e.g árvore de busca, Hash com encadeamento.
4 TABELAS DE DISPERSÃO (HASH)
5 Introdução Os métodos de busca visto até momento: buscam informações com base na comparação de suas chaves. algoritmos eficientes consideram os elementos ordenados e tiram proveito disso. O algoritmo mais eficientes tem custo computacional O(log n). A busca baseada em hashing (tabela de dispersão ou espalhamento) é mais eficiente. Na média, é possível encontrar a chave com apenas K COMPARAÇÕES, onde k é beemmm menor que o tamanho do conjunto de chaves.
6 Introdução Vetores utilizam índices para armazenar as informações. Através do índice as operações sobre vetores são realizadas no tempo O(1)=constante. Vetores Não fornecem mecanismos para calcular o índice a partir de uma informação armazenada. A pesquisa não é O(1). Família 1 José Maria 2 Leila 3 Artur 4 Jolinda 5 Gisela 6 Alciene Família[1] = José Maria Família[3] = Artur Família[2] = Leila Em qual posição está Alciene?
7 Introdução A forma de resolver o problema de acesso a partir de uma chave, e ainda garantir eficiência, é através do uso de tabelas de dispersão (hash table)
8 Conceitos Esquema da Tabela Hash K4 K1 K5 K3 K2 Função Hash Tabela Hash
9 Conceitos h(k 4 ) Conjunto de Chaves Busca Possíveis K 4 K 3 K 5 K 1 K 2 h(k 3 ) h(k 5 ) h(k 1 ) h(k 2 ) Tabela Hash
10 Conceitos: exemplo Tabela Hash Função de Hashing ; Fausto Silva; Av. Canal. Nº ; Carla Perez; Rua Celso Oliva. Nº ; Gugu Liberato; Av. Atlântica. S/N ; Hebe Camargo; Rua B. Nº
11 Funções Hash
12 Funções Hash Uma função de dispersão (função hash) mapeia uma chave de busca para um índice da tabela. O ideal é que a função forneça índices únicos para o conjunto de chaves. A função de Hashing é extremamente importante, pois ela é responsável por distribuir as informações pela Tabela Hash. A implementação da função de Hashing tem influência direta na eficiência das operações da Hash. Quanto melhor for o espalhamento mais eficiênte serão as operações Tipos de Funções Hash Método da Divisão Método da Multiplicação
13 Propriedades Propriedades de Boas Funções Hash Ser eficientemente avaliada (fácil implementação). Devem espalhar bem as chaves de busca (evitar colisões).
14 Método da Divisão h (k) = k resto m Potências de 2 deve ser evitada para valores de m. m deve ser um número primo distante de pequenas potências de 2 (m grande). O fator de carga da tabela é um bom parâmetro para iniciar a busca por m.
15 Método da Divisão Exemplo : k = m = 5013 (m é o tamanho da tabela) h (10028) = resto 5013 h (10028) = 2
16 Método da Divisão Exemplo de Função Hash #define N 101 int hash (int mat) { return (mat%n); }
17 Método da Multiplicação h(k) = (m * (ka resto 1)) A escolha de m não é Tão relevante; A é uma constante : 0<A<1 Extrair a parte fracionária de ka, ou seja, ka resto 1. Utilizar o piso(floor) do resultado A =
18 Método da Multiplicação Exemplo : k = m = 1024 A = h(k) = 1024*(123456* resto 1) = 1024*(76300, resto 1) = 1024*0, = h(k)= 4
19 Funções de Conversão Conversão de Strings para Inteiros Método da Adição; Método dos 3 primeiros caracteres; Método da ponderação.
20 Método da Adição Os valores dos caracteres da string correspondentes na tabela ASCII são somados. A chave é o resultado dessa soma.
21 Método da Adição Exemplo : String = aed2 m = 256 ( tamanho da tabela) aed2 = (valores dos caracteres na tabela ASCII) h (348) = 348 resto 256 = 92
22 Método dos 3 primeiros caracteres h(k)= (chave[0]*b 0 + chave[1]*b 1 + chave[2]*b 2 ) resto m m é o tamanho da tabela chave[ ] são os caracteres da string B um base qualquer
23 Método dos 3 primeiros caracteres Exemplo : String = Joseph M=10007 ( tamanho da tabela) B=53 h(joseph) = (74*1 +111* *2809) resto M = 8768
24 Método da Ponderação N K= i=1 chave[i] p[i ] onde, n é o número de caracteres da chave; chave[i] corresponde à representação ASCII do i-ésimo caractere da chave. p[i] é um inteiro de um conjunto de pesos gerados de forma aleatória.
25 Método da Ponderação Exemplo : String = Joseph M=10007 ( tamanho da tabela) pesos[] = {102, 15, 151, 32, 89, 501, 21, 70} h(joseph) = (74* * * *32+112* *501 ) resto M = 1819
26 Hashing Perfeito
27 Hashing Perfeito Característica: Para quaisquer chaves x e y diferentes e pertencentes a A, a função utilizada fornece saídas diferentes
28 Hashing Perfeito: Exemplo Como construir a Tabela Hash para armazenar as informações dos alunos de uma determinada turma de um curso específico? Identificando as partes significativas da chave. Analisando a chave: Desconsiderando o último dígito (controle), temos outros dígitos com significados especiais:
29 Hashing Perfeito Portanto, podemos considerar no cálculo de endereço parte do número da matrícula. Esta parte mostra a dimensão que a Tabela Hash deverá ter. Dimensionando a tabela com 100 elementos, qual a função que aplicada sobre matrículas de alunos retorna os índices dessa tabela? R: Depende qual é a turma e o curso específico dos alunos que devem ser armazenados.
30 Hashing Perfeito Supondo que a turma seja do 2º semestre de 2011 (código 112) e do curso de Corte e Costura (código 35). Qual seria a função de hashing perfeito!? #define N 100 int h(int mat) { return (mat )%N; }
31 Hashing Imperfeito
32 Hashing Imperfeito Características: Existem chaves x e y diferentes e pertencentes a A, onde a função Hash utilizada fornece saídas iguais;
33 Hashing Imperfeito Suponha que queiramos armazenar as seguintes chaves: C, H, A, V, E e S em um vetor de P = 7 posições (0..6) conforme a seguinte função h(k) = ascii(k)%p. Tabela ASCII: C (67); H (72); A (65); V (86); E (69) e S (83).
34 Hashing Imperfeito
35 Hashing Imperfeito Se aumentássemos o tamanho da tabela para P=13 (0..12) C = 67 = 2 H = 72 = 7 A = 65 = 0 V = 86 = 8 E = 69 = 4 S = 83 = 5
36 Hashing Imperfeito Se aumentássemos o tamanho da tabela para P=14 (0..13) C = 67 = 11 H = 72 = 2 A = 65 = 9 V = 86 = 2 E = 69 =13 S = 83 = 13
37 Hashing Imperfeito Conclusões Escolher o tamanho da tabela é fundamental; Uma tabela mau dimensionada pode gera um grande número de colisões; Não existe formula perfeita mas existe boas práticas
38 Tratamento de Colisões
39 Colisões Colisão é o mapeamento de duas (ou mais) chaves para um mesmo posição no vetor. Colisão 11 1 Um bom método de resolução de colisões é essencial, pois não importa a qualidade da função de hashing, colisões são sempre muito prováveis de acontecer. Métodos para o tratamento de colisões: Encadeamento Direto (chaining); Endereçamento aberto (open adressing).
40 Colisões Encadeamento Direto (chaining) Armazena em listas encadeadas as chaves que sofreram colisão Tabela Hash 25
41 Colisões Encadeamento Direto (Chaining) Vantagens: Número ilimitado de elementos e colisões; Não é necessário prever antecipadamente a quantidade de elementos a serem inseridos. Desvantagens: Devido ao número ilimitado de elementos que podem ser inseridos, o desempenho da tabela hash fica prejudicado.
42 Colisões Endereçamento Aberto (open addressing) Neste método as chaves que sofreram colisão são inseridas na própria tabela. Algumas Técnicas Linear Probing Quadratic Probing Double Hashing
43 Colisões Linear Probing O valor do índice correspondente a chave que sofreu colisão é incrementado até que uma posição disponível seja encontrada, nova_posição=(h(x)+i mod M). 11 Colisão h(x)+i Probing Tabela hash 5 Tabela após a aplicação de linear probing
44 Colisões Linear Probing Vantagens Método simples e fácil de implementar, que pode gerar bons resultados. Desvantagens Faz surgir o fenômeno Clustering. 21 Colisão Probing h(x) Colisão Probing h(x) Colisão Probing h(x)
45 Colisões Resultado final da Tabela Hash
46 Quadratic Probing Colisões Comportamento parecido com Linear Probing, só que agora, o incremento é quadrático, nova_posição= (h(x) + i 2 mod M) 21 Colisão Probing h(x) + 1 i=1; Colisão Probing h(x) + 4 i=2; Tabela Hash Tabela Hash 21 Tabela após a aplicação de quadratic probing
47 Colisões Quadratic Probing Vantagens É uma alternativa ao linear probing, pois evita o clustering primário. Desvantagens Poderá surgir o clustering secundário, no entanto, este é menos severo que o primário.
48 Colisões Double Hashing Utiliza duas funções hashing para tratar a colisão, a primeira é a mesma utilizada para o mapeamento da chave e a segunda é uma espécie de função incremento, nova_posição= (h(x)+ig(x) mod m). x=21; m=5; h(x)= x mod m; g(x)= 2+(x mod (m - 2)); nova_posição=h(x) + g(x). Calculando: h(x)= 21 mod 5 = 1; g(x)= 2+(21 mod (5-2)) = 2; nova_posição=1 + 2 = 3 mod 5 = Colisão Probing g(x)+h(x) Tabela Hash Tabela após a aplicação de Double Hashing
49 Colisões Double Hashing Vantagens: É uma técnica eficiente, que nos permite a livre escolha da função incremento. Desvantagens: Maior nível de complexidade; Se a função incremento for mal escolhida, ela nunca percorrerá todos os espaços da tabela.
Hashing (Tabela de Dispersão)
Hashing (Tabela de Dispersão) Prof. Marcos Alves 2009-B Roteiro Contextualização Conceitos Básicos Hashing (método de pesquisa) Hashing Perfeito Hashing Imperfeito Colisões Métodos de Tratamento de Colisões
ESTRUTURA DE DADOS E ALGORITMOS. Hashing (Tabela de Dispersão) Cristina Boeres
ESTRUTURA DE DADOS E ALGORITMOS Hashing (Tabela de Dispersão) Cristina Boeres Motivação! Os métodos de pesquisa vistos até agora buscam informações armazenadas com base na comparação de suas chaves! Para
Hashing: conceitos. Hashing
Hashing: conceitos hashing é uma técnica conhecida como espalhamento, mapeamento ou randomização que tenta distribuir dados em posições aleatórias de uma tabela (array) associa cada objeto (de um determinado
Dicioná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)
Tabelas de dispersão/hash
Tabelas de dispersão/hash 1 Tabelas de dispersão/hash 1. Considere uma tabela de hash de tamanho m = 1000 e a função de hash h(k)= [m.(k.a % 1)], com A=( 5-1)/2. Calcule os valores de hash das chaves 61,
TABELA HASH. Prof. André Backes. Princípio de funcionamento dos métodos de busca
TABELA HASH Prof. André Backes Problema 2 Princípio de funcionamento dos métodos de busca Procurar a informação desejada com base na comparação de suas chaves, isto é com base em algum valor que a compõe
MC3305 Algoritmos e Estruturas de Dados II. Aula 02 Hashing. Prof. Jesús P. Mena-Chalco.
MC3305 Algoritmos e Estruturas de Dados II Aula 02 Hashing Prof. Jesús P. Mena-Chalco [email protected] 2Q-2015 1 Sobre a busca de dados/chaves 2 Busca em tabelas (vetores/arrays) Para se resolver
Hashing. Cormen Capítulo 11
Hashing Cormen Capítulo 11 Motivação Um compilador utiliza uma tabela de símbolos para relacionar símbolos aos dados associados. Símbolos: nomes de variáveis, funções, etc.. Dados associados: localização
Matemática Discreta 12
Universidade Federal do Vale do São Francisco Curso de Engenharia da Computação Matemática Discreta 12 Prof. Jorge Cavalcanti [email protected] - www.univasf.edu.br/~jorge.cavalcanti 1 Introdução
Tabelas 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,
Tabelas de hash Acabamos de estudar como implementar uma tabela hashing aberta e estudaremos agora como implementar uma tabela hashing fechada ou
Tabelas de hash Acabamos de estudar como implementar uma tabela hashing aberta e estudaremos agora como implementar uma tabela hashing fechada ou também denominada de tabela hashing com endereçamento aberto.
Algoritmos de pesquisa. Tabelas de dispersão/hash
Algoritmos de pesquisa Tabelas de dispersão/hash Introdução Motivação: Considerar o problema de pesquisar um determinado valor num vetor. Se o vetor não está ordenado, a pesquisa requer O(n) de complexidade.
Hashing (Tabela de Dispersão)
Hashing (Tabela de Dispersão) Motivação! Os métodos de pesquisa vistos até agora buscam informações armazenadas com base na comparação de suas chaves.! Para obtermos algoritmos eficientes, armazenamos
Transformação de Chave. (Hashing)
UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA Transformação de Chave (Hashing) e Gomes da Costa [email protected] 1 Transformações de Chave, ou Tabela Hash, ou Tabelas de Dispersão; Hashing
SCC0601 Introdução à Ciência da Computação II. Prof. Lucas Antiqueira
SCC0601 Introdução à Ciência da Computação II Prof. Lucas Antiqueira Acesso sequencial = O(n) Busca binária = O(log 2 n) Árvores binárias de busca = O(log 2 n) (melhor caso) Acesso em tempo constante Por
13 Hashing (parte 2) SCC201/501 - Introdução à Ciência de Computação II
13 Hashing (parte 2) SCC201/501 - Introdução à Ciência de Computação II Prof. Moacir Ponti Jr. www.icmc.usp.br/~moacir Instituto de Ciências Matemáticas e de Computação USP 2010/2 Moacir Ponti Jr. (ICMCUSP)
Transformação de Chave - Hashing
UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA Transformação de Chave (Hashing) e Gomes da Costa [email protected] 1 Transformações de Chave, ou Tabela Hash, ou Tabelas de Dispersão; Hashing
Hashing Externo. SCC-503 Algoritmos e Estruturas de Dados II. Thiago A. S. Pardo M.C.F. de Oliveira Cristina Ciferri
Hashing Externo SCC-503 Algoritmos e Estruturas de Dados II Thiago A. S. Pardo M.C.F. de Oliveira Cristina Ciferri 1 Hashing 0 1 chave de busca K = LOWELL 2 h(k) endereço 4 (RRN 4) 3 4 5... LOWELL......
Introdução Métodos de Busca Parte 2 - Hashing
Introdução Métodos de Busca Parte - Hashing ICC Acesso seqüencial = O(n) Quanto mais as estruturas (tabelas, arquivos, etc.) crescem, mais acessos há Quando armazenamento é em disco, reduzir acessos é
Algoritmos e Estrutura de Dados. Aula 11 Estrutura de Dados: Tabelas Hash Parte II Prof. Tiago A. E. Ferreira
Algoritmos e Estrutura de Dados Aula 11 Estrutura de Dados: Tabelas Hash Parte II Prof. Tiago A. E. Ferreira Introdução Como visto na aula passada as tabelas hash: Diminuem a quantidade de endereçamento
AED Algoritmos e Estruturas de Dados LEEC /2007. Tabelas de Dispersão
AED Algoritmos e Estruturas de Dados LEEC - 2006/2007 Tabelas de Dispersão Tabelas de Dispersão - Introdução (1) As tabelas de dispersão (hash tables) são estruturas de dados adequadas para: Tabelas de
Tabelas de Dispersão. Algoritmos e Estruturas de Dados Verão Cátia Vaz 1
Tabelas de Dispersão Algoritmos e Estruturas de Dados Verão 2012 1 Tabelas de endereçamento directo Endereçamento directo é usado quando o universo de chaves é pequeno e todas as chaves são distintas:
TAD dicionário. Métodos do TAD dicionário:
TAD dicionário O TAD dicionário modela uma coleção buscável de itens chave-elemento As principais operações em dicionários são busca, inserção e remoção de itens Vários itens com a mesma chave são permitidos
Implemente a função de remoção de uma chave na tabela hashing fechada em questão. void remover(tabela tabela, int n) {
Implemente a função de remoção de uma chave na tabela hashing fechada em questão. void remover(tabela tabela, int n) { } Tabelas de hash fechada: Exercício int posicao = buscar(tabela, n); if (posicao
TABELAS HASH. Vanessa Braganholo Estruturas de Dados e Seus Algoritmos
TABELAS HASH Vanessa Braganholo Estruturas de Dados e Seus Algoritmos MOTIVAÇÃO Alternativas para acelerar buscas em grandes volumes de dados: Usar um índice (ex. Árvore B, Árvore B+) Usar cálculo de endereço
Complexidade de Algoritmos
Complexidade de Algoritmos Prof. Diego Buchinger [email protected] [email protected] Prof. Cristiano Damiani Vasconcellos [email protected] Análise de complexidade de Estruturas
Pesquisa em memória primária: hashing. Algoritmos e Estruturas de Dados II
Pesquisa em memória primária: hashing Algoritmos e Estruturas de Dados II Hashing Algoritmos vistos efetuam comparações para localizar uma chave. Os registros armazenados em uma tabela são diretamente
indexação e hashing Construção de Índices e Funções Hash Diego Gomes Tomé - MSc. Informática Orientador: Prof. Dr. Eduardo Almeida October 13, 2016
indexação e hashing Construção de Índices e Funções Hash Diego Gomes Tomé - MSc. Informática Orientador: Prof. Dr. Eduardo Almeida October 13, 2016 Universidade Federal do Paraná indexação e hashing Índices
Lista de Exercícios 07 Introdução à Ciência de Computação II (SCC0201/501)
Lista de Exercícios 07 Introdução à Ciência de Computação II (SCC0201/501) Prof. Moacir P. Ponti Jr. 24 de novembro de 2010 1 Hashing 1. Suponha uma tabela hash de tamanho 10 com endereçamento aberto para
Tabela Hash. Prof. Msc. Mariella Berger
Tabela Hash Prof. Msc. Mariella Berger http://www.inf.ufes.br/~mberger [email protected] [email protected] HASHING Suponha que você pudesse criar um array onde qualquer item pudesse ser localizado
Tabelas 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
Tabela Hash. Disciplina: Estruturas de Dados Professora: Camila Taumaturgo M.Sc.
Tabela Hash Disciplina: Estruturas de Dados Professora: Camila Taumaturgo email: [email protected] Sumário Tabela Hash Introdução Princípios de funcionamento Funções de Dispersão Tratamento
Hashing. ACH Introdução à Ciência da Computação II. Delano M. Beder
ing ACH2002 - Introdução à Ciência da Computação II Delano M. Beder Escola de Artes, Ciências e Humanidades (EACH) Universidade de São Paulo [email protected] 11/2008 Material baseado em slides do professor
AED 2002/2003 p.1/16. Tabelas de Dispersão. Funçoes de dispersão Encadeamento externo Procura linear Double hashing Eficiência da procura
AED 2002/2003 p.1/16 Tabelas de Dispersão Funçoes de dispersão Encadeamento externo Procura linear Double hashing Eficiência da procura AED 2002/2003 p.2/16 Funções de dispersão Deve distribuir as chaves
Edital 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
Universidade 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
Hashing Organização Direta de Arquivos
Hashing Organização Direta de Arquivos Estrutura de Dados II Aula 08 UFS - DComp Adaptados a partir do material da Profa. Kenia Kodel Cox Arquivos Diretos Os principais métodos de organização e acesso
Árvores B. Hashing. Estrutura de Dados II Jairo Francisco de Souza
Árvores B Hashing Estrutura de Dados II Jairo Francisco de Souza Funções Hashing Divisão Compressão de chaves alfanuméricas Multiplicação Enlaçamento Deslocado Limite Função Meio-Quadrado Extração Transformação
Hashing Endereçamento Direto Tabelas Hash
Hashing Endereçamento Direto Tabelas Hash Professora: Fátima L. S. Nunes 1 1 1 Vimos até agora: Introdução Conceitos e técnicas de Orientação a Objetos Conceitos e aplicações de Complexidade Assintótica
ANÁLISE E PROJETO DE BANCO DE DADOS
ANÁLISE E PROJETO DE BANCO DE DADOS ESTRUTURAS E INDEXAÇÃO FELIPE G. TORRES ARQUIVOS Um arquivo é uma sequência de registros. Em muitos casos do mesmo tipo. Se cada registro no arquivo tem exatamente o
Árvores B. Hashing. Estrutura de Dados II Jairo Francisco de Souza
Árvores B Hashing Estrutura de Dados II Jairo Francisco de Souza Resolução de colisões Endereçamento aberto Re-hashing Encadeamento Separado Coalescido Coalescido com porão Endereçamento em balde Endereçamento
Algoritmos e Estruturas de Dados: Tabela de Dispersão com Encadeamento
Algoritmos e Estruturas de Dados: Tabela de Dispersão com Encadeamento Rômulo Silva de Oliveira Departamento de Automação e Sistemas DAS UFSC [email protected] http://www.das.ufsc.br/~romulo Maio/011
Organização de Arquivos
Construção de Sistemas de Gerência de Bancos de Dados DI PUC-Rio Prof: Sérgio Lifschitz Organização de Arquivos Organização de Arquivos Tipos básicos de arquivos: heap files (entry sequenced files) sorted
SCC Capítulo 5 Métodos de Busca [3]
SCC-201 - Capítulo 5 Métodos de [3] João Luís Garcia Rosa 1 1 Departamento de Ciências de Computação Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo - São Carlos http://www.icmc.usp.br/~joaoluis
Tabelas Hash. Jeane Melo
Tabelas Hash Jeane Melo Roteiro Introdução Motivação Definição Tabelas Hash Exemplos Funções hash Colisões Introdução Estudamos a utilização de estruturas como listas e árvores para armazenar informações
Estruturas 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
Matrizes esparsas: definição
Matrizes esparsas: definição o objetivo é mostrar os métodos de armazenamento e manipulação de matrizes esparsas esparsidade de uma matriz é a relação entre o número de elementos nulos de uma matriz e
Edital de Seleção 032/2016 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões
Edital de Seleção 032/2016 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
ACH2024. Aula 22 Hashing Externo - Hashing estático e dinâmico (extensível) Prof Helton Hideraldo Bíscaro
ACH04 Aula Hashing Externo - Hashing estático e dinâmico (extensível) Prof Helton Hideraldo Bíscaro 1 Tipos de organização de arquivos Sequencial Lista ligada (com ou sem tabela de alocação) Indexada Um
Tabelas de Dispersão. Estrutura de Dados e Algoritmos
Tabelas de Dispersão Tabelas de Dispersão Sumário Definição. Características. Resolução de colisões: dispersão com listas e dispersão aberta. Teste quadrático. Desempenho de tabelas de dispersão. Interface
Hash Tables Tabelas de Espalhamento
Hash Tables Tabelas de Espalhamento Estruturas de Prof. Vilson Heck Junior Hash Table Como Estrutura de : Serve para organizar e armazenar dados de forma a agilizar o processo de pesquisa; Pode ser programada
Edital de Seleção 055/2017 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões
Edital de Seleção 055/2017 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
Edital 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
Tabelas de dispersão
Tabelas de dispersão FEUP - MIEEC Programação 2-2008/2009 Tabelas de dispersão Uma tabela de dispersão é um vector de tamanho fixo em que os elementos são colocados na posição determinada por uma função
ESTRUTURAS DE DADOS E ALGORITMOS TABELA HASH
ESTRUTURAS DE DADOS E ALGORITMOS 1 TABELA HASH Adalberto Cajueiro Departamento de Sistemas e Computação Universidade Federal de Campina Grande ESTRUTURAS VISTAS ATÉ AGORA Busca O(n) Busca O(log(n)) 2 É
Aula 31: Encadeamento exterior. Modelo de encadeamento exterior. Complexidade do encadeamento exterior
31.1 Aula 31: Encadeamento exterior Conceito de encadeamento Modelo de encadeamento exterior Complexidade do encadeamento exterior 31.2 Introdução Recordando: uma colisão ocorre quando duas chaves diferentes
Possui como idéia central a divisão de um universo de dados a ser organizado em subconjuntos mais gerenciáveis.
3. Tabelas de Hash As tabelas de hash são um tipo de estruturação para o armazenamento de informação, de uma forma extremamente simples, fácil de se implementar e intuitiva de se organizar grandes quantidades
Classificação e Pesquisa de Dados. Aula 23 Organização de Arquivos: Arquivos Indexados, Diretos e Arquivos Invertidos
Classificação e Pesquisa de Dados Aula 23 Organização de Arquivos: Arquivos Indexados, Diretos e Arquivos Invertidos UFRGS INF1124 Arquivo indexado - AI Indicação de uso Baixa freqüência de acessos seqüenciais
Edital de Seleção 016/2018 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões
Edital de Seleção 016/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
HASHING HASHING HASHING HASHING. HASHING - Função hash - Propriedades HASHING. Notas de aula da disciplina IME Estruturas de Dados I
Notas de aula da disciplina IE - Estruturas de Dados I Paulo Eustáquio Duarte Pinto (pauloedp arroba ime.uerj.br) Árvores de Busca: Atualização/Busca - caso médio: O(log n) Atualização/Busca - pior caso:
1. Selecione a Estrutura de Dados que melhor representa os diretórios ou pastas de arquivos do computador.
1. Selecione a Estrutura de Dados que melhor representa os diretórios ou pastas de arquivos do computador. 1) Fila 2) Pilha 3) Árvore 4) Lista 5) Grafo 2. Selecione a Estrutura de Dados que melhor representa
A inserção da chave 6 da árvore acima resulta na árvore abaixo.
149 Árvores B+ As operações nas árvores B+ não são muito diferentes das operações das árvores B. Inserir uma chave em uma folha que ainda tenha algum espaço exige que se coloque as chaves desta folha em
Métodos Computacionais. Operadores, Expressões Aritméticas e Entrada/Saída de Dados
Métodos Computacionais Operadores, Expressões Aritméticas e Entrada/Saída de Dados Tópicos da Aula Hoje aprenderemos a escrever um programa em C que pode realizar cálculos Conceito de expressão Tipos de
Estrutura de Dados e Arquivos Ementa Objetivo Geral Conteúdo Avaliação
Faculdades NDA Plano de Ensino Curso:SISTEMAS DE INFORMAÇÃO Disciplina: Estrutura de Dados e Arquivos Carga horária semanal: 4 Ano: 2006 Turma: MD3 e ME3 Carga horária total: 80 Corpo docente: Ly Freitas
TÉCNICAS DE PROGRAMAÇÃO. Estrutura de dados
TÉCNICAS DE PROGRAMAÇÃO Estrutura de dados O que são estrutura de dados? É a forma como os armazenamos tipos de dados, vistos dia a dia, ou seja, nada mais são do que a transformação de uma forma de armazenamento
Centro Federal de Educação Tecnológica de Minas Gerais Programa de Pós-Graduação em Modelagem Matemática e Computacional
Centro Federal de Educação Tecnológica de Minas Gerais Programa de Pós-Graduação em Modelagem Matemática e Computacional Disciplina: Algoritmos e Estruturas de Dados Professor: Flávio Cardeal Lista de
CMP Algoritmos Algoritmos Parte I. Professor Vicente Paulo de Camargo
CMP1044 - Algoritmos Professor Vicente Paulo de Camargo Variáveis Uma variável é um local na memória principal (RAM) Ou seja, é um endereço na memória do computador o qual armazena um conteúdo Cada variável
Tabelas de Dispersão (hash tabels)
INF1010-3WB Estruturas de Dados Avançadas Tabelas de Dispersão (hash tabels) 13/05/2018 2010 DI, PUC-Rio Estruturas de Dados Avançadas 2010.1 1 Motivação Busca (acesso) com vetor é muito eficiente Info*
