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

Limpar Busca

Uma das finalidades da utilização das funções de hashing é

  • A converter um número inteiro para uma sequência de caracteres.
  • B criptografar um arquivo com senha.
  • C recuperar informações a partir de um arquivo criptografado.
  • D garantir a autenticidade de uma mensagem.
  • E mapear os dados de um objeto para um valor inteiro representativo.
Determinado profissional deseja criar um sistema para armazenar informações de contato com base no número de telefone. A chave seria o número de telefone e o valor o nome da pessoa. Ao tentar encontrar o nome de alguém, existe uma função que mapeia o número de telefone para a posição na tabela onde o nome está armazenado. Podemos afirmar que uma tabela hash (hash table) em estruturas de dados e algoritmos se trata de
  • A técnica para armazenar valores únicos em uma lista.
  • B estrutura de dados que organiza os dados em uma árvore binária.
  • C tabela que permite a pesquisa de dados usando índices numéricos.
  • D estrutura de dados que armazena pares chave-valor e permite pesquisa eficiente com base na chave, empregando uma função de hash.
O hashing é uma técnica amplamente utilizada em várias áreas da computação. Esse processo é essencial para a criação de estruturas de dados eficientes, permitindo a indexação eficaz, verificação de integridade de dados e segurança em sistemas de software e redes. Define corretamente a estrutura de dados Hash Table (Tabela de Hashing): 
  • A Tabela que armazena dados em ordem alfabética.
  • B Tabela usada exclusivamente para criptografar senhas.
  • C Transforma dados em uma representação visual com base na hash table.
  • D Estrutura de dados que mapeia chaves para valores com base em funções de hashing.

Segundo o algoritmo adotado pelo Sistema de Pagamentos Brasileiro (SPB), transações do tipo DOC ou TED utilizam arquivos XML criptografados no modo simétrico, as quais são enviadas para o receptor em pacotes que incluem o wrap, ou encapsulamento, da chave simétrica com a chave pública do receptor e assinatura com a chave privada do emissor. Chaves do tipo 3DES eram utilizadas para a criptografia simétrica, mas foram descobertas fragilidades. Para substituir o 3DES, sem perda de funcionalidade e de forma mais segura, pode ser utilizado o algoritmo:

  • A RSA;
  • B AES;
  • C DES;
  • D SHA-256;
  • E DSA.

Uma tabela de espalhamento ou hashing é uma estrutura de dados eficaz para implementar dicionários.
Em relação à tabela de espalhamento, segundo Cormen (2012), analise os itens a seguir:
I. O tempo médio para pesquisar um elemento em uma tabela de espalhamento é O(1).
II. Quando temos mais de uma chave mapeada para a mesma posição, temos uma situação de colisão.
III. A técnica mais simples para resolução de colisões é por endereçamento aberto.

Está CORRETO o que se afirma em:  

  • A Nenhum dos itens é verdadeiro.
  • B I e II, apenas.
  • C II e III, apenas.
  • D I e III, apenas.
  • E I, II e III.