Questões de Concurso Sobre algoritmos e estrutura de dados

Foram encontradas 3.780 questões

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
Q3237044 Algoritmos e Estrutura de Dados

Sobre o algoritmo Advanced Encryption Standard (AES), foram feitas as seguintes afirmações:


I. O algoritmo AES pode usar chaves de 128, 192 ou 256 bits.

II. O algoritmo AES é considerado um algoritmo criptográfico simétrico.

III. O algoritmo AES realiza a cifragem e decifragem da informação.


Sobre as afirmações acima, pode-se afirmar que:

Alternativas
Q3235896 Algoritmos e Estrutura de Dados
Um desenvolvedor está implementando uma estrutura de dados do tipo fila em Java. Ele iniciou a implementação da classe Fila utilizando um array para armazenar os elementos:


Imagem associada para resolução da questão



No método enfileirar, qual é a finalidade da expressão (fim + 1) % elementos.length?
Alternativas
Q3234667 Algoritmos e Estrutura de Dados
Qual estrutura de dados segue a regra de funcionamento "último a entrar, primeiro a sair" (LIFO)?
Alternativas
Q3220741 Algoritmos e Estrutura de Dados
Os algoritmos de cifração e decifração são denominados: 
Alternativas
Q3219157 Algoritmos e Estrutura de Dados
Uma escola está implementando um sistema de gerenciamento de tarefas para os computadores do laboratório, considerando as seguintes estratégias:

- Tarefas de alta prioridade são adicionadas a uma estrutura na qual a última tarefa inserida é a primeira a ser resolvida.
- Tarefas comuns seguem uma estrutura na qual as tarefas são resolvidas na ordem em que chegaram.

Com base nas definições de Pilhas e Filas, qual das alternativas relaciona CORRETAMENTE a estrutura de dados utilizada para cada tipo de tarefa?
Alternativas
Q3218891 Algoritmos e Estrutura de Dados
Considere o algoritmo de ordenação para um vetor de inteiros em linguagem Javascript descrito a seguir:

sort = (array) => {         if (array.length <= 1) {                 return array;         }         const pivot = array[array.length - 1];         const left = [];         const right = [];         for (let i = 0; i < array.length - 1; i++) {                 if (array[i] < pivot) {                         left.push(array[i]);                   } else {
                        right.push(array[i]);                 }         }         return [...sort(left), pivot, ...sort(right)];
}

Considerando n como o tamanho do vetor, assinale a alternativa CORRETA que corresponde à complexidade média de tempo do algoritmo na notação Big-O:
Alternativas
Q3218889 Algoritmos e Estrutura de Dados
Considere o código de uma árvore implementado na linguagem Javascript, descrito a seguir:

class TreeNode {         constructor(value) {                 this.value = value;                 this.children = [];         }         addChild(child) {                 this.children.push(child); } } class Tree {         constructor(value) {                 this.root = new TreeNode(value); }
        compute(value) {                 if (!this.root) return null;                 const queue = [this.root];                 while (queue.length > 0) {                         const current = queue.shift();                         if (current.value === value) {                         return current;                         }                         for (const child of current.children) {                         queue.push(child);                         }                 }                 return null;         } }

O método compute do código é conhecido pelo acrônimo em inglês:
Alternativas
Q3217338 Algoritmos e Estrutura de Dados

Julgue o item a seguir, referente a algoritmos de aprendizado de máquina. 


O algoritmo K-means garante a otimização dos clusters, independentemente da inicialização dos centroides, desde que a métrica de distância utilizada seja euclidiana, e os dados estejam em um espaço vetorial de baixa dimensionalidade. 

Alternativas
Q3217336 Algoritmos e Estrutura de Dados

Julgue o item a seguir, referente a algoritmos de aprendizado de máquina. 


O algoritmo KNN (k-nearest neighbors) é um modelo supervisionado de aprendizado de máquina que realiza previsões classificando uma nova amostra com base na maioria dos votos de seus K vizinhos mais próximos, definidos por uma métrica de distância. 

Alternativas
Q3205765 Algoritmos e Estrutura de Dados
Uma árvore binária é uma estrutura de dados em que cada nó tem, no máximo, dois filhos. Esses filhos são geralmente chamados de filho esquerdo e filho direito. Ela é composta por nós que armazenam valores e formam uma hierarquia, começando a partir de um nó especial chamado de raiz.
Considere a seguinte árvore binária de busca abaixo: 



Imagem associada para resolução da questão


Qual é a sequência dos nós visitados na travessia pós-ordem desta árvore? 
Alternativas
Q3205762 Algoritmos e Estrutura de Dados
Uma fila é uma estrutura de dados linear. Em uma fila, os elementos são inseridos em uma extremidade (o final da fila) e removidos na outra extremidade (o início da fila). O comportamento dessa estrutura segue o princípio FIFO (First In, First Out), ou seja, o primeiro elemento a entrar é o primeiro a sair.
Considere que uma fila inicialmente está vazia e recebe as seguintes operações sequencialmente: 
1. Inserir 15 2. Inserir 20 3. Remover um elemento 4. Inserir 35 5. Inserir 42 6. Remover dois elementos 7. Inserir 51

Após todas essas operações, qual será a sequência de remoção dos elementos restantes na fila?
Alternativas
Q3205761 Algoritmos e Estrutura de Dados
Os algoritmos de ordenação são ferramentas essenciais na programação e em ciência da computação, pois permitem a organização eficiente de dados. A escolha do algoritmo apropriado depende de fatores como o tamanho da lista, a natureza dos dados e a necessidade de eficiência em termos de tempo e espaço.

Sendo assim, sobre os algoritmos de ordenação, podemos afirmar que

I. Bubble sort é um algoritmo de ordenação simples e muito eficiente para grande conjunto de dados.
II. Insertion sort é um algoritmo de ordenação utilizado para um pequeno número de elementos.
III. Quick sort é um algoritmo de ordenação mais rápido, que emprega a técnica de divisão e conquista.
IV. Selection sort recebe esse nome pela maneira como ele percorre o array ao longo das iterações: ele seleciona o menor elemento atual e o troca de lugar.

Estão corretas apenas as afirmativas
Alternativas
Q3204201 Algoritmos e Estrutura de Dados
A complexidade de inserção de um elemento em uma posição fora das extremidades em uma lista duplamente encadeada é
Alternativas
Q3204200 Algoritmos e Estrutura de Dados
O algoritmo que é usado para resolver o problema encontrar uma árvore subjacente que conecte todos os vértices com o menor peso possível sem formar ciclos é o algoritmo de
Alternativas
Q3204199 Algoritmos e Estrutura de Dados
Você deve implementar duas pilhas em um único array A[1…n] de modo que nenhuma das pilhas transborde, a menos que o número total de elementos nas duas pilhas juntas seja n. Considerando que as operações PUSH e POP sejam executadas em tempo O(1), assinale a opção cuja estratégia descrita permite essa implementação de forma eficiente.
Alternativas
Q3204198 Algoritmos e Estrutura de Dados
Suponha que você tenha n chaves distintas e utilize uma função hash h para mapear essas chaves para uma tabela hash T de comprimento m, assumindo que a distribuição de hash é feita de maneira simples e uniforme. Assinale a opção que corresponde ao número esperado de colisões entre as chaves.
Alternativas
Q3204197 Algoritmos e Estrutura de Dados
A complexidade de busca em uma árvore binária balanceada é
Alternativas
Q3195996 Algoritmos e Estrutura de Dados
No pseudocódigo (Portugol), a estrutura de repetição “_______” é utilizada para repetir um bloco de instruções enquanto uma condição for verdadeira, enquanto a estrutura de repetição “_______” é utilizada para repetir um bloco de instruções um número específico de vezes.

Assinale a alternativa que preenche, correta e respectivamente, as lacunas do trecho acima.
Alternativas
Q3195995 Algoritmos e Estrutura de Dados
Sobre os fluxogramas, analise as assertivas abaixo:

I. Fluxogramas utilizam símbolos gráficos para representar passos de um algoritmo.
II. O símbolo de losango é usado para representar uma decisão ou condição.
III. Fluxogramas são úteis para visualizar a lógica de um algoritmo.
IV. O símbolo de oval é utilizado para representar uma operação de entrada ou saída.
V. Fluxogramas podem ser usados para representar estruturas de repetição.

Quais estão INCORRETAS?
Alternativas
Respostas
401: A
402: C
403: D
404: B
405: B
406: B
407: B
408: B
409: E
410: E
411: C
412: A
413: D
414: B
415: E
416: A
417: B
418: D
419: E
420: C