0% acharam este documento útil (0 voto)
3 visualizações13 páginas

Maps e Hash

O documento aborda conceitos de estruturas de dados, focando em Maps e Hash Maps, que utilizam um modelo chave-valor para armazenar e gerenciar dados de forma eficiente. Ele discute a implementação de tabelas hash em Python, suas vantagens, como acesso rápido e flexibilidade, além de considerar a escolha da função hash e o tratamento de colisões. A conclusão enfatiza a importância dessas ferramentas para programadores na criação de aplicações rápidas e confiáveis.

Enviado por

Wendell Oliveira
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
3 visualizações13 páginas

Maps e Hash

O documento aborda conceitos de estruturas de dados, focando em Maps e Hash Maps, que utilizam um modelo chave-valor para armazenar e gerenciar dados de forma eficiente. Ele discute a implementação de tabelas hash em Python, suas vantagens, como acesso rápido e flexibilidade, além de considerar a escolha da função hash e o tratamento de colisões. A conclusão enfatiza a importância dessas ferramentas para programadores na criação de aplicações rápidas e confiáveis.

Enviado por

Wendell Oliveira
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

Aula 01

ESTRUTURA DE
DADOS

ESTRUTURAS DE
DADOS Maps e Hash
AVANÇADAS E
ANÁLISE DE
1.
Estrutura
de Dados 1 Conceitos de Maps e Hash
Map: chave-valor
.
2 Tabelas hash

.
Estruturas de
3 Implementação de tabelas
hash em python
Dados .
Avançadas e
Análise de
Dados
Maps e Hash
Maps
Introdução a Maps e Hash Maps

Essas estruturas de dados permitem armazenar e


gerenciar dados de forma eficiente, utilizando o
modelo chave-valor.
Conceito de Maps
Estrutur
a de Maps
Dados Definição: Map é uma estrutura
de dados que associa chaves
únicas a valores específicos.
Permite armazenar, buscar e
gerenciar dados de forma
organizada.
Características: em um Map,
cada chave mapeia para
exatamente um valor, e cada
chave é única dentro do Map.
O que são Hash Maps?
Estrutur
a de Definição: Hash Map é um tipo de

Dados Map que usa uma função hash para


calcular o índice no qual um valor
deve ser armazenado, com base
em sua chave.
Eficiência: permite operações de
inserção, busca e remoção de
dados em tempo praticamente
constante, ou seja, O(1), na média.
Tabelas Hash
Estrutur
a de Funcionamento: uma tabela hash

Dados usa uma função hash para


converter a chave em um índice de
um array, onde o valor
correspondente é armazenado.
Colisões: quando duas chaves
diferentes produzem o mesmo
índice, isso é chamado de colisão.
Existem várias estratégias para
lidar com colisões, como
encadeamento e sondagem linear.
Grafos

Fonte: adaptado de Dias (2021)


Grafos

Fonte: adaptado de Dias (2021)


Implementação de Tabelas Hash
Estrutur
em Python
a de
Python implementa tabelas hash por
Dados meio do tipo dict (dicionário). Vamos
ver um exemplo de como usar
dicionários para mapear nomes de
estudantes a suas notas.
Vantagens das Tabelas Hash
Estrutur
a de Acesso Rápido: o tempo de busca,
inserção e remoção é, na média,

Dados constante, tornando as tabelas hash


extremamente eficientes para
operações frequentes.
Flexibilidade: podem armazenar quase
qualquer tipo de dados como valor, e
usar tipos imutáveis (como strings e
números) como chaves.
Considerações sobre Tabelas Hash
Estrutur
a de Escolha da Função Hash: uma boa
função hash distribui as chaves

Dados uniformemente pelos índices da tabela,


minimizando colisões.
Tratamento de Colisões: É essencial
implementar estratégias eficazes para
lidar com colisões para manter a
eficiência das operações.
Conclusão
Estrutur
a de Maps e Hash Maps são
ferramentas essenciais na caixa
Dados de ferramentas de um
programador, oferecendo uma
maneira poderosa e eficiente de
gerenciar e acessar dados. A
compreensão de como
implementar e utilizar essas
estruturas em Python abre portas
para a criação de aplicações mais
rápidas e confiáveis.
Estrutura
de Dados

MERCADO
Competências
necessárias para o
Mercado de
Trabalho.

É HORA DE
PRATICAR
Não se esqueça de
praticar: use a
atividade prática
proposta para
exercitar o que

Você também pode gostar