Questões de Hashing (Algoritmos e Estrutura de Dados)

Limpar Busca
Leia a frase abaixo referente aos conceitos básicos sobre Estruturas de Dados.
"Existem diversas Estruturas de Dados utilizadas na programação, quatro exemplos principais são: ______"

Assinale a alternativa que preencha corretamente a lacuna.
  • A Framework, Tipado, Full-Stack e Shell
  • B Listas, Árvores, Grafos e Tabelas Hash
  • C Plugin, BootStrap, Grafos e Tabelas Hash
  • D Framework, Árvores, Grafos e Tipado
  • E Listas, Árvores, Full-Stack e Shell

As funções de hash são comumente empregadas nos mecanismos de segurança da informação.
Quanto às suas propriedades básicas, para que o algoritmo de hash seja considerado forte, é correto afirmar que:

  • A a mesma entrada deve produzir saídas diferentes;
  • B deve ser difícil encontrar duas entradas que produzam o mesmo hash;
  • C deve ser possível produzir a entrada original a partir do hash resultante;
  • D pequenas mudanças na entrada devem produzir pequenas mudanças no hash resultante;
  • E mesmo que as entradas possuam o mesmo tamanho, os resultados de hash terão tamanhos diferentes.

Considere o esquema com a distribuição das chaves (k) numéricas de uma tabela Hash a seguir.


Imagem relacionada à questão do Questões Estratégicas


Acerca do esquema, avalie se as afirmativas a seguir são falsas (F) ou verdadeiras (V).


I. A função Hash utilizada é h(k) = k mod 7.

II. Há colisão em duas das chaves.

III. A complexidade do algoritmo de busca é O(log n).


As afirmativas são, respectivamente,

  • A V, V e F.
  • B V, F e F.
  • C F, V e V.
  • D F, V e F.
  • E F, F e F.

Considere que em uma tabela de dispersão (ou tabela hash) de módulo 9, inicialmente vazia, que usa endereçamento aberto, técnica de tentativa linear para resolver colisões e função de dispersão h(k) = k mod m, onde k é a chave a ser inserida, foram inseridas as seguintes chaves: 3, 14, 15, 81, 65, 19, 35, 40 e 50 (nesta ordem). O número de colisões para a inserção desses dados é:

  • A 2.
  • B 0.
  • C 4.
  • D 1.
  • E 3.

Uma certa tabela de dispersão (hash) em um programa de computador utiliza a função de espalhamento h(k) = k mod m, em que k é a chave e m é o tamanho de um vetor de listas ligadas indexado por h(k).


Para m = 5013, o índice obtido para k = 10034 é

  • A 2.
  • B 8.
  • C 5013.
  • D 5021.
  • E 15047.