Questões de Concurso Sobre algoritmos e estrutura de dados

Foram encontradas 3.259 questões

Q3256025 Algoritmos e Estrutura de Dados

Considere o seguinte trecho de código em  pseudocódigo: 


Q55.png (297×125)


Qual será o valor da variável "resultado" após a execução desse código usando-se os valores x=5, y=5 e z=9? 

Alternativas
Q3256022 Algoritmos e Estrutura de Dados
Considere o seguinte trecho de código em pseudocódigo:

Q52.png (330×82)

Quais valores de x serão escritos após o código acima, considerando que a variável x foi inicializada com o valor 1?  
Alternativas
Q3256002 Algoritmos e Estrutura de Dados
Qual estrutura de dados é apropriada para armazenar uma lista de elementos, que permita a inserção, remoção e busca de elementos com eficiência, além disso, a ordem de inserção dos elementos deve ser preservada e o acesso a qualquer elemento da lista deve ser rápido? 
Alternativas
Q3255996 Algoritmos e Estrutura de Dados
Analise as afirmativas a seguir sobre a complexidade de algoritmos.

I - A complexidade de um algoritmo é uma medida de Sua velocidade e do espaço que consome.
Il - A notação Big-O é usada para descrever o melhor caso de complexidade de um algoritmo.
IlI - Um algoritmo com complexidade O(1) tem tempo de execução constante, independentemente do tamanho da entrada.

Qual(is) afirmativa(s) está(ão) correta(s)? 
Alternativas
Q3255991 Algoritmos e Estrutura de Dados
Considere uma tabela de hashing com 5 posições (índices de 0 a 4) e a função de hashing é dada por: h(k)=k mod(5), onde k é a chave. Suponha que as chaves sejam inseridas na seguinte ordem: 12, 7, 18, 23, 10. A tabela utiliza sondagem linear para tratar colisões. Após todas as inserções, qual das alternativas representa corretamente o estado da tabela de hashing? 
Alternativas
Q3247488 Algoritmos e Estrutura de Dados
Os algoritmos são sequências lógicas e finitas de passos que resolvem problemas específicos, sendo a base para o desenvolvimento de sistemas computacionais. Sobre algoritmos, analise as afirmativas a seguir:
I. Algoritmos recursivos são aqueles que se definem em termos de si mesmos, exigindo uma condição base para evitar chamadas infinitas.
II. A complexidade de tempo de um algoritmo refere-se exclusivamente ao número de passos necessários para executar o código, desconsiderando a entrada do problema.
III. Um algoritmo pode ser implementado em diferentes linguagens de programação, desde que sua lógica seja preservada.
Está correto o que se afirma em:
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
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
Respostas
41: C
42: B
43: E
44: C
45: E
46: D
47: A
48: C
49: D
50: B
51: B
52: B
53: B
54: B
55: E
56: E
57: C
58: A
59: D
60: B