1.Fácil
Quais são as três etapas de um algoritmo de divisão e conquista?
- AChutar, verificar, repetir
- BDividir, conquistar, combinar
- COrdenar, buscar, retornar
- DLer, calcular, escrever
2.Fácil
Quanto é log₂ 1024?
- A12
- B32
- C512
- D10
3.Fácil
O que significa uma operação rodar em tempo O(1)?
- ASempre leva exatamente um segundo
- BSó pode ser executada uma vez
- CProcessa exatamente um elemento por segundo de tempo de execução
- DSeu tempo de execução não cresce com o tamanho da entrada
4.Média
Um quicksort usa sempre o primeiro elemento como pivô. Com qual entrada ele apresenta o comportamento de pior caso?
- AUm array que já está ordenado
- BUm array com todos os elementos diferentes
- CUm array em ordem aleatória
- DUm array de tamanho 2
5.Média
Qual é a complexidade de tempo de: for i = 1 to n: (j = 1; while j < n: j = j × 2)?
- AO(n²)
- BO(log n)
- CO(n)
- DO(n log n)
6.Média
Por que muitas rotinas de ordenação de bibliotecas passam para o insertion sort em subarrays muito pequenos?
- AO insertion sort tem pouco overhead e é rápido com entradas pequenas ou quase ordenadas
- BAlgoritmos recursivos não conseguem lidar com arrays de menos de 10 elementos
- CO insertion sort usa menos memória que qualquer outro algoritmo de ordenação em entradas grandes
- DO insertion sort é O(n log n) no pior caso
7.Difícil
Como é classificado o problema do caixeiro-viajante?
- AEstá em P, porque o algoritmo de Dijkstra o resolve visitando cada cidade uma única vez
- BA versão de decisão está em P, mas a versão de otimização é NP-completa
- CÉ indecidível
- DA versão de decisão é NP-completa e a versão de otimização é NP-difícil
8.Difícil
Qual é o custo amortizado de incrementar um contador binário, sabendo que um incremento pode inverter muitos bits?
- AO(n log n) por incremento
- BO(n) por incremento
- CO(log n) por incremento
- DO(1) por incremento
Gabarito
- 1. B · Dividir, conquistar, combinar
- 2. D · 10
- 3. D · Seu tempo de execução não cresce com o tamanho da entrada
- 4. A · Um array que já está ordenado
- 5. D · O(n log n)
- 6. A · O insertion sort tem pouco overhead e é rápido com entradas pequenas ou quase ordenadas
- 7. D · A versão de decisão é NP-completa e a versão de otimização é NP-difícil
- 8. D · O(1) por incremento
Soluções completas passo a passo: pratique este tópico em examproblems.com.