1.Fácil
Qual é a complexidade de tempo para encontrar o maior valor num array não ordenado de n números?
- AO(1)
- BO(n)
- CO(n log n)
- DO(log n)
2.Fácil
O que significa uma operação rodar em tempo O(1)?
- AProcessa exatamente um elemento por segundo de tempo de execução
- BSó pode ser executada uma vez
- CSeu tempo de execução não cresce com o tamanho da entrada
- DSempre leva exatamente um segundo
3.Fácil
Qual é a complexidade de tempo da busca em profundidade num grafo armazenado como listas de adjacência?
- AO(V²)
- BO(V + E)
- CO(E log V)
- DO(V × E)
4.Média
Uma função executa um laço de n iterações e depois, separadamente, outro laço de n iterações. Qual é a sua complexidade de tempo?
- AO(log n)
- BO(2ⁿ)
- CO(n)
- DO(n²)
5.Média
Um algoritmo guloso (greedy):
- AFaz a melhor escolha local em cada passo
- BUsa apenas recursão
- CSempre fornece a solução ótima
- DTesta todas as soluções possíveis
6.Média
Por que a programação dinâmica não traz ganho real de velocidade para o merge sort?
- ASeus subproblemas não se sobrepõem, então não há nada para reaproveitar
- BO merge sort já é O(n)
- CA programação dinâmica só funciona em problemas de grafos, não em vetores
- DO merge sort não tem estrutura recursiva
7.Difícil
Para mostrar que um novo problema X é NP-difícil, o que você precisa fazer?
- AReduzir X a um problema NP-difícil conhecido em tempo polinomial
- BReduzir um problema NP-difícil conhecido a X em tempo polinomial
- CMostrar que X não tem algoritmo polinomial para entradas pequenas
- DMostrar que X pode ser verificado em tempo polinomial
8.Difícil
Como o algoritmo de Bellman–Ford detecta um ciclo de peso negativo alcançável a partir da origem?
- AVerifica se alguma aresta tem peso negativo
- BExecuta o algoritmo de Dijkstra duas vezes e compara os dois resultados de distância
- CConta os ciclos com busca em profundidade
- DApós V − 1 rodadas, verifica se alguma aresta ainda pode ser relaxada
Gabarito
- 1. B · O(n)
- 2. C · Seu tempo de execução não cresce com o tamanho da entrada
- 3. B · O(V + E)
- 4. C · O(n)
- 5. A · Faz a melhor escolha local em cada passo
- 6. A · Seus subproblemas não se sobrepõem, então não há nada para reaproveitar
- 7. B · Reduzir um problema NP-difícil conhecido a X em tempo polinomial
- 8. D · Após V − 1 rodadas, verifica se alguma aresta ainda pode ser relaxada
Soluções completas passo a passo: pratique este tópico em examproblems.com.