Aluno: Breno Helfstein Moura
Supervisor: José Coelho de Pina
Funções de hashing são amplamente utilizadas em aplicações do dia a dia. Suas aplicações são diversas, entre elas estão consistência de arquivos, sistemas distribuídos de banco de dados, encurtador de URL, verificação de isomorfismo em árvores, armazenamento de senhas, entre outros.
A ideia geral de uma função de hashing é associar um objeto de um espaço específico (uma string por exemplo) para um inteiro dentro de um intervalo positivo.
Pretendo nesse trabalho detalhar sobre como funcionam os algoritmos de hashing e as estratégias para resolver colisões. Ter uma função de hashing bem distribuída ou uma boa estratégia de resolver colisões pode implicar em uma tabela de hashing mais eficiente, que usa melhor as capacidades da CPU. Pensando em grande escala, isso pode implicar em um menor uso de energia e economias para grandes empresas de software.
Nesse trabalho pretendo abordar sobre os seguintes tópicos:
Atividade | Jan | Fev | Mar | Abr | Mai | Jun | Jul | Ago | Set | Out | Nov | |||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Planejamento e escolha da bibliografia | • | • | • | • | ||||||||||
Leitura mais detalhada da bibliografia | • | • | • | • | ||||||||||
Elaboração do trabalho escrito e implementações das tabelas de hashing | • | • | • | • | • |