iagoac / mc202

Disciplina MC202 - Estruturas de Dados
GNU General Public License v3.0
17 stars 13 forks source link

Dúvida sobre conceitos envolvendo tabela de hashing #116

Closed PedroSabino99 closed 3 years ago

PedroSabino99 commented 4 years ago

Bom dia! Eu não entendi bem por que é ruim que o tamanho do vetor seja uma potência de 2 quando nossa função de hashing usa o método da divisão.

iagoac commented 4 years ago

@PedroSabino10 eu realmente não entendi sua dúvida.

O tamanho do vetor (tamanho da tabela de hash) é arbitrário. Entretanto, ele deve ser grande o suficiente para conseguir armazenar todos os elementos necessários e pequeno o suficiente de forma que não ocupe memória desnecessária.

Você tem razão, como o laboratório utiliza o método da divisão, não existe nenhum problema que o tamanho do vetor seja uma potência de 2.
Entretanto, no laboratório, caso o vetor não seja exatamente do tamanho N, então você obterá a resposta errada.

PedroSabino99 commented 4 years ago

Obrigado professor. Eu fiquei com essa dúvida porque na videoaula sobre hashing e nos slides é comentado que se costuma evitar que o tamanho do vetor seja uma potência de 2 pois se for ele só vai considerar os bits menos significativos