Questões de Concurso Sobre hashing em algoritmos e estrutura de dados

Foram encontradas 108 questões

Q4383053 Algoritmos e Estrutura de Dados
Em um cenário hipotético, o Blockchain está sendo utilizado para registrar operações realizadas entre diferentes sistemas corporativos. Cada bloco contém 1.024 transações, cujos hashes são organizados em uma árvore de Merkle binária balanceada.
Nessa estrutura, cada nó interno é obtido a partir do hash da concatenação dos dois hashes de seus nós filhos, até a obtenção de um único valor no topo da árvore, denominado raiz de Merkle.
Um auditor possui o conteúdo de uma determinada transação e a raiz de Merkle registrada no cabeçalho do bloco. Para verificar se essa transação pertence ao bloco, sem receber todas as demais transações, ele recebe os hashes necessários para reconstruir o caminho entre a transação e a raiz.

O número de hashes adicionais, que o auditor deve receber para realizar essa verificação, é  
Alternativas
Q4186037 Algoritmos e Estrutura de Dados
Preencha as lacunas abaixo, identificando as informações correspondentes às tabelas de espalhamento (hash).

Em hashing com encadeamento (separate chaining), armazenando n chaves em uma tabela de tamanho m, o fator de carga α é definido por α = _______________. Para uma função hash que aproxima hashing uniforme simples, o tempo médio esperado de uma operação de busca bem-sucedida é O(1 + ________________).

A sequência que preenche corretamente as lacunas é:
Alternativas
Q4181860 Algoritmos e Estrutura de Dados
Em uma rotina de processamento de eventos de auditoria, um sistema recebe registros em ordem cronológica e precisa realizar duas operações com alta frequência: inserir novos eventos ao final da sequência e remover sempre o evento mais antigo ainda não processado. Em outra etapa do mesmo sistema, é necessário verificar rapidamente se determinado identificador de transação já foi recebido, sem percorrer sequencialmente todos os registros armazenados. Nesse contexto, a alternativa que indica CORRETAMENTE as estruturas de dados a serem empregadas no cenário descrito é:
Alternativas
Q4181836 Algoritmos e Estrutura de Dados
Estruturas de dados são fundamentais para a eficiência de algoritmos, influenciando diretamente o desempenho de operações como busca, inserção e remoção. Entre essas estruturas, a tabela hash uliliza uma função hash para mapear chaves a posições em uma estrutura de armazenamento, proporcionando alto desempenho quando bem distribuída.
Considerando o cenário ideal de funcionamento de uma tabela hash, em que a função hash distribui uniformemente as chaves e há baixa ocorrência de colisões, assinale a alternativa que representa CORRETAIVENTE a complexidade da operação de busca nessa estrutura.
Alternativas
Q4160909 Algoritmos e Estrutura de Dados
Considere uma estrutura de dados do tipo tabela de dispersão (hash table), utilizada para armazenar e recuperar dados de forma eficiente por meio de uma função de espalhamento (hash). Durante a inserção de elementos, pode ocorrer colisão, isto é, quando duas chaves diferentes são mapeadas para a mesma posição da tabela. Para tratar colisões, pode-se utilizar a técnica de endereçamento aberto (Open Addressing), na qual, ao ocorrer uma colisão, o sistema procura outra posição disponível na própria tabela, verificando sequencialmente as próximas posições livres (por exemplo: se a posição 2 está ocupada, tenta a 3, depois a 4, e assim sucessivamente). Nesse contexto, qual técnica de tratamento de colisões é descrita?
Alternativas
Q4140338 Algoritmos e Estrutura de Dados

Associe as estruturas de dados às suas respectivas operações de remoção ou características de acesso.


Estrutura        Característica / Operação
(1) Fila
(2) Pilha
 (3) Tabela Hash
(4) Árvore
(   ) Operação DEQUEUE remove o elemento que está no conjunto há mais tempo.

(   ) O acesso aos elementos é feito através de uma chave e uma função de espelhamento.

(   ) Operação POP remove o elemento do topo da estrutura.

(   ) Estrutura hierárquica onde cada nó possui no máximo dois filhos (se for binária).



A sequência correta dessa associação é:

Alternativas
Q4071622 Algoritmos e Estrutura de Dados
No contexto da área de Algoritmos e Estruturas de Dados, o hashing consiste em um método de pesquisa, no qual os registros armazenados em uma tabela são diretamente endereçados a partir de uma transformação aritmética sobre a chave de pesquisa (Ziviani, 2012). Uma possível função de transformação é K mod M, em que K é um inteiro correspondente à chave de pesquisa e M é o tamanho da tabela.
Considere que a i-ésima letra do alfabeto é representada pelo número i (A = 1, B = 2, C = 3, …) e que o valor da chave K é obtido pela soma dos valores das letras da palavra.

Dada a função de transformação h(K) = K mod 7, qual alternativa apresenta CORRETAMENTE os endereços gerados para as chaves CASA e BOLA, respectivamente?
Alternativas
Q3285497 Algoritmos e Estrutura de Dados
Um importante problema de segurança para os sistemas operacionais é a autenticação, um processo de segurança que visa comprovar a identidade de um usuário. O sistema de proteção deve identificar os usuários para prover a correta autorização de acesso aos recursos do sistema. Um processo de autenticação amplamente utilizado pelos sistemas é a validação de credenciais de acesso formadas por nome e senha. Para proteger as senhas armazenadas no banco de dados, é comum temperar a senha (password salting) e usar um algoritmo de HASH.
As técnicas de salting e HASH são adotadas simultaneamente nos esquemas
Alternativas
Q3279455 Algoritmos e Estrutura de Dados

A respeito de estrutura de dados, julgue o item a seguir.


No que se refere a operações de busca, hash tables são as mais ineficientes entre as estruturas de dados, devido à necessidade de tais operações percorrerem todos os elementos dessa estrutura de dados.

Alternativas
Q3237047 Algoritmos e Estrutura de Dados
Sobre Hash, foram feitas as seguintes afirmações:

I. O Hash possui sua entrada de tamanho variável. II. O Hash possui sua saída em um tamanho variável. III. Pode-se reverter o Hash, como uma boa prática de criptografia.

Sobre as afirmações acima, pode-se afirmar que:
Alternativas
Q3044870 Algoritmos e Estrutura de Dados

Considere o seguinte código em uma linguagem de programação hipotética que possui função de hashing.


Imagem associada para resolução da questão


Considerando-se esse código, sobre o hashing, verifica-se que a(o)

Alternativas
Q3035868 Algoritmos e Estrutura de Dados

Sobre funções hash, analise os itens a seguir: 


I. O SHA1 é uma função de hash que gera como resultado um resumo de 128 bytes.


II. O SHA2 é composto por uma família de algoritmos que incluem versões como SHA-224, SHA-256, SHA-384 e SHA-512.


III. SHA-3 é um subconjunto da família primitiva criptográfica Keccak.


Está(ão) CORRETO(S):

Alternativas
Q3031728 Algoritmos e Estrutura de Dados
Considere as afirmações a seguir.

I. Função de Hash: h(x) = x % 10 mapeia uma chave x para um índice entre 0 e 9.
II. Operação de Módulo: % retorna o resto da divisão.
III. Colisões: quando várias chaves mapeiam para o mesmo índice, ocorre uma colisão.
IV. Encadeamento: técnica para resolver colisões na qual cada posição na tabela contém uma lista de chaves.

Nesse contexto, o analista Zudo está implementando um sistema de armazenamento de dados utilizando uma tabela Hash de tamanho 10. Ele escolhe a função de Hash h(x) = x % 10 para mapear as chaves. Ao enfrentar o desafio das colisões, Zudo opta pela técnica de encadeamento para gerenciá-las. Ele então insere as chaves {15, 25, 35, 45, 55} na tabela Hash. A estrutura final dessa tabela será:
Alternativas
Q3026350 Algoritmos e Estrutura de Dados
Considere um cenário onde é necessário armazenar e acessar rapidamente dados não ordenados, mas que podem conter chaves duplicadas. Qual estrutura de dados é adequada para esse propósito, permitindo acesso eficiente e suporte a chaves duplicadas?
Alternativas
Q3017887 Algoritmos e Estrutura de Dados
Sobre a Programação Dinâmica (PD) e seus princípios, considere as seguintes afirmativas:

I. A Programação Dinâmica resolve problemas complexos dividindo-os em subproblemas mais simples e solucionando esses subproblemas uma única vez, armazenando suas soluções.
II. O princípio da otimalidade de Bellman estabelece que uma solução ótima de um problema de PD pode ser obtida resolvendo-se subproblemas ótimos recursivamente.
III. A Programação Dinâmica só pode ser aplicada a problemas que envolvem decisões discretas.
IV. Em PD, a função de valor (ou função objetivo) é construída de forma recursiva, baseandose em estados e decisões anteriores.

Quais afirmativas estão CORRETAS? 
Alternativas
Q2589844 Algoritmos e Estrutura de Dados

No que se refere ao uso de tabelas de hash para armazenamento de informação, assinale a alternativa correta.

Alternativas
Q2518082 Algoritmos e Estrutura de Dados
Para acelerar a busca sobre uma lista de mensagens, Beatriz adotou uma tabela de dispersão, na qual o e-mail do emissor é quem define o hash.

N: INTEIRO V: VETOR [0..N-1] de LISTA<MENSAGEM> Algoritmo Adicionar (M: MENSAGEM) H <- 0 Para i de 0 até Tamanho (M.email) - 1 H <- H + Ord (M.email[i]) Fim Para H <- H Mod N V[H].Incluir(M) Fim Algoritmo

O hash é dado pelo resto da divisão entre a soma dos códigos ASCII do email e o tamanho do vetor de listas. Para que Beatriz obtenha a melhor distribuição das mensagens nas listas:

Alternativas
Q2518070 Algoritmos e Estrutura de Dados
A analista Ana precisou implementar rapidamente uma função hash denominada AHash. A AHash deve determinar um valor numérico entre 0 e 5 para uma chave de entrada. Ana optou por implementar em AHash o método de hashing denominado Método da Divisão. Para compatibilizar possíveis chaves alfanuméricas com o Método da Divisão, Ana implementou um dicionário que atribui a cada caracter um valor numérico. Internamente, a AHash utiliza como chave o produto dos números correspondentes aos caracteres da chave original.
Sabendo que os caracteres C, V e M correspondem, respectivamente, aos números 67, 86 e 77, a AHash retornará para a chave “CVM”:
Alternativas
Q2510164 Algoritmos e Estrutura de Dados
Considere as assertivas abaixo sobre criptografia e funções do tipo hash:

I. O MD5 não é propriamente um modelo criptográfico, existindo limitações até mesmo de segurança. Seu hash é constituído por uma estrutura hexadecimal de 32 caracteres.
II. O AES (Advanced Encryption Standard) é um algoritmo de criptografia, porém é unidirecional, não permitindo a descriptografia.
III. O RSA (Rivest-Shamir-Adleman) é um algoritmo de criptografia assimétrica bidirecional.

Conforme as assertivas, responda a alternativa verdadeira:
Alternativas
Q2498248 Algoritmos e Estrutura de Dados
Um analista de sistemas está projetando um sistema que requer a implementação de uma estrutura de dados para representar um conjunto de elementos, onde a busca por um elemento específico deve ser realizada de forma eficiente. Qual estrutura de dados é mais apropriada para essa situação?
Alternativas
Respostas
1: A
2: D
3: B
4: D
5: C
6: C
7: D
8: A
9: E
10: A
11: D
12: D
13: D
14: C
15: C
16: C
17: C
18: E
19: C
20: E