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

Foram encontradas 197 questões

Q4098378 Algoritmos e Estrutura de Dados
No contexto da análise de algoritmos, as notações assintóticas são utilizadas para descrever o comportamento do tempo de execução em função do tamanho da entrada. Com base nas definições de Big O, little o e Ω, informe se é verdadeiro (V) ou falso (F) o que se afirma a seguir e assinale a alternativa com a sequência correta.
( ) A notação Big O (O(g(n))) define um limite superior assintótico, indicando que o algoritmo cresce no máximo como g(n). ( ) A notação little o (o(g(n))) define um limite superior estrito, indicando que a taxa de crescimento é estritamente menor que g(n). ( ) A notação Ω(g(n)) define um limite intermediário assintótico, sendo comumente empregada para expressar o pior caso de execução de um algoritmo. ( ) A notação Θ(g(n)) define um limite inferior assintótico, garantindo que o algoritmo cresce pelo menos como g(n). 
Alternativas
Q4098375 Algoritmos e Estrutura de Dados
Em um sistema de mapeamento urbano, os cruzamentos são vértices e as ruas são arestas de um grafo. Para analisar a conectividade e verificar quais regiões podem ser alcançadas a partir de um ponto inicial, a equipe utiliza Busca em Largura (BFS) e Busca em Profundidade (DFS). Considerando que o grafo é representado por lista de adjacência e que ambos os algoritmos percorrem todos os vértices e arestas alcançáveis, assinale a alternativa que apresenta corretamente a complexidade de tempo no pior caso para BFS e DFS. 
Alternativas
Q4098359 Algoritmos e Estrutura de Dados
Um Professor do IFCE solicita aos estudantes que realizem uma atividade de análise sobre algoritmos clássicos utilizados para determinar caminhos de menor custo em redes e grafos. O docente explica que cada algoritmo possui propriedades específicas e funciona melhor dependendo do tipo de entrada, das restrições do problema e da presença de arestas com custos negativos.
Para a atividade, os alunos receberam uma lista de descrições resumidas de diferentes algoritmos e devem identificar qual delas corresponde corretamente às características de um algoritmo clássico de menor caminho.
Com base na atividade proposta, os alunos devem assinalar qual das seguintes alternativas?
Alternativas
Q4098358 Algoritmos e Estrutura de Dados
Na teoria da complexidade computacional, problemas podem ser classificados quanto à existência de algoritmos eficientes para sua resolução. É correto afirmar que problemas intratáveis são aqueles
Alternativas
Q4098353 Algoritmos e Estrutura de Dados
Na teoria da complexidade computacional, as classes P, NP e NP-completo descrevem relações entre problemas de decisão quanto ao tempo necessário para resolvê-los ou verificar suas soluções. Com base nas definições formais e nas relações entre essas classes, assinale a alternativa correta.
Alternativas
Q4071623 Algoritmos e Estrutura de Dados
A Ordenação por Inserção (Insertion Sort) é um algoritmo eficiente para ordenar um número pequeno de elementos (Cormen et al., 2024). Em cada passo, a partir de i = 2, o i-ésimo elemento da sequência é transferido para o seu lugar apropriado no arranjo (vetor).

Sobre o método de ordenação por inserção, assinale a alternativa INCORRETA:
Alternativas
Q4067220 Algoritmos e Estrutura de Dados
Em análise de algoritmos, uma rotina que percorre sequencialmente os elementos de um vetor de tamanho n, realizando uma comparação por posição, possui complexidade de tempo: 
Alternativas
Q4067209 Algoritmos e Estrutura de Dados
Em análise de algoritmos, uma rotina que percorre sequencialmente os elementos de um vetor de tamanho n, realizando uma comparação por posição, possui complexidade de tempo:
Alternativas
Q4065001 Algoritmos e Estrutura de Dados
Sobre os algoritmos de ordenação Merge Sort e Bubble Sort (Método da Bolha), assinale a alternativa INCORRETA: 
Alternativas
Q4057671 Algoritmos e Estrutura de Dados
A análise da complexidade de algoritmos permite prever o desempenho de sistemas computacionais conforme o volume de dados aumenta. Acerca do assunto, registre V, para as afirmativas verdadeiras, e F, para as falsas:

(__)O algoritmo de busca binária exige que o conjunto de dados esteja previamente ordenado para funcionar corretamente em tempo logarítmico.
(__)O QuickSort apresenta sua pior performance, com complexidade quadrática, quando o pivô escolhido é repetidamente o menor ou o maior elemento da lista.
(__)O algoritmo Bubble Sort é classificado como estável, o que significa que ele preserva a ordem relativa de elementos com chaves de ordenação idênticas.
(__)A busca sequencial é tecnicamente impossível de ser realizada em listas que contenham elementos do tipo ponto flutuante de precisão dupla.

Após análise, assinale a alternativa que apresenta a sequência correta dos itens acima, de cima para baixo:
Alternativas
Q4052683 Algoritmos e Estrutura de Dados
Sobre análise de algoritmos, considere o algoritmo de busca binária aplicado sobre um arranjo unidimensional de n elementos, previamente ordenado. No pior caso, a complexidade de tempo (ordem de crescimento) deste algoritmo é adequadamente representada por:
Alternativas
Ano: 2026 Banca: FGV Órgão: AMAZUL Prova: FGV - 2026 - AMAZUL - Engenheiro de Computação |
Q3851260 Algoritmos e Estrutura de Dados
Um desenvolvedor precisa implementar um algoritmo de busca em uma estrutura de dados que armazena 1 milhão de registros ordenados. O requisito é encontrar um registro específico com o menor número de comparações possível.
O algoritmo e a complexidade de tempo mais adequados são
Alternativas
Q4097657 Algoritmos e Estrutura de Dados
A ordenação organiza os dados de uma coleção em uma ordem específica, geralmente crescente ou decrescente, buscando facilitar a busca e outras operações. Dessa forma, assinale a alternativa CORRETA.
Alternativas
Q3531967 Algoritmos e Estrutura de Dados
No que se refere ao SonarQube, às estruturas de dados e à complexidade de algoritmos, julgue os itens subsecutivos. 
Para grandes volumes de dados, um algoritmo com complexidade de tempo O(n) (linear) é considerado menos eficiente que um algoritmo com complexidade de tempo O(n log n), uma vez que o crescimento linear é mais acentuado que o crescimento logarítmico.  
Alternativas
Q3350208 Algoritmos e Estrutura de Dados
O analista Raimundo sabe que a indução de árvores de decisão é uma das formas mais simples, e ainda assim mais bem sucedidas, de aprendizagem de máquina. No entanto, ao aplicá-la em alguns problemas da empresa em que atua, o algoritmo de aprendizagem-em-árvore-de-decisão gera uma grande árvore quando realmente não há padrão a ser encontrado nos dados.
O nome do problema encontrado por Raimundo é  
Alternativas
Q3299567 Algoritmos e Estrutura de Dados
Na análise de complexidade de algoritmo, uma função f(n) é Ω (t(n)) se, e somente se, a seguintecondição for satisfeita, onde c e k são constantes positivas:
Alternativas
Q3298833 Algoritmos e Estrutura de Dados

Considere o seguinte código escrito em Python 3:


Imagem associada para resolução da questão


A complexidade de tempo desse algoritmo em termos da notação Big-O é

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

Um pesquisador está usando um algoritmo genético para encontrar o melhor conjunto de features possíveis para um problema. No entanto, durante a execução do algoritmo o pesquisador percebe que as soluções geradas sempre divergem para a mesma solução subótima.



Tendo em vista o cenário apresentado, assinale a alternativa que apresenta a ação que irá melhorar a exploração do espaço de respostas a fim de evitar a rápida convergência.

Alternativas
Respostas
1: A
2: C
3: E
4: C
5: D
6: D
7: A
8: A
9: D
10: A
11: C
12: E
13: C
14: E
15: C
16: A
17: D
18: D
19: B
20: E