A técnica de hashing que, no pior caso, realiza O(1) acesso...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
A alternativa correta da questão é a B - perfeito.
Vamos entender o motivo dessa ser a alternativa correta e por que as outras estão incorretas:
Hashing é uma técnica utilizada para mapeamento de dados, que permite acessos rápidos a elementos armazenados em uma tabela de dispersão (hash table). A eficiência dessa técnica é geralmente medida pela quantidade de acessos à memória necessários para realizar operações de busca, inserção e remoção.
O enunciado da questão menciona uma técnica de hashing que, no pior caso, realiza O(1) acessos à memória para executar uma busca. Vamos analisar cada alternativa:
Alternativa A - direto: Este termo não é comumente utilizado para descrever uma técnica específica de hashing. Portanto, não se encaixa no contexto da questão.
Alternativa B - perfeito: Esta é a alternativa correta. Hashing perfeito é uma técnica em que não há colisões, ou seja, cada chave é mapeada de forma única para um endereço na tabela de dispersão. Isso permite que, no pior caso, a operação de busca seja realizada em O(1) acessos à memória. Ou seja, a busca é feita em tempo constante.
Alternativa C - fechado: Este termo se refere a uma técnica de tratamento de colisões conhecida como hashing fechado ou endereçamento fechado, onde as colisões são resolvidas através de listas encadeadas. No pior caso, a busca pode levar mais do que O(1) acessos, dependendo do comprimento das listas.
Alternativa D - uniforme: O termo hashing uniforme refere-se a uma função de hash que distribui uniformemente as entradas pela tabela de dispersão, minimizando colisões. No entanto, mesmo com uma boa distribuição, ainda podem ocorrer colisões, e a busca, no pior caso, não será necessariamente O(1).
Portanto, a alternativa correta é B - perfeito, pois o hashing perfeito garante que, no pior caso, a busca será realizada em tempo constante, ou seja, O(1) acessos à memória.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Busca por Hash, é uma busca do "HASH Perfeito" digamos.
GABARITO LETRA B
Em um algoritmo de hash, para cada entrada, haverá um valor de 'hash' correspondente, contudo entradas diferentes podem causar o mesmo valor de 'hash', é o que chamamos de colisão, quando um algoritmo de 'hashing' causa colisões, chamamos de 'hash imperfeito', quando não, de 'hash perfeito'.
hash perfeito
In computer science, a perfect hash function h for a set S is a hash function that maps distinct elements in S to a set of m integers, with no collisions. In mathematical terms, it is an injective function. Perfect hash functions may be used to implement a lookup table with constant worst-case access time.
https://en.wikipedia.org/wiki/Perfect_hash_function
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo