1.Fácil
O que é memoização?
- AEscrever comentários ao lado de cada linha de código
- BConverter automaticamente a recursão em um laço equivalente, de modo que não seja preciso pilha de chamadas
- CLiberar memória depois que uma função retorna
- DArmazenar os resultados de chamadas de função para que chamadas repetidas sejam respondidas da memória
2.Fácil
O que descreve o tempo de execução de um algoritmo no pior caso?
- AO tempo máximo que ele leva entre todas as entradas de tamanho n
- BO tempo esperado que leva com uma entrada aleatória de tamanho n
- CO tempo que leva com a menor entrada
- DO tempo que leva num computador lento
3.Fácil
Qual é o O grande de 3n² + 5n + 2?
- AO(n³)
- BO(n²)
- CO(5n)
- DO(3n²)
4.Média
Por que a base do logaritmo costuma ser omitida no O grande, como em O(log n)?
- ALogaritmos de bases diferentes diferem apenas por um fator constante
- BOs logaritmos são sempre arredondados para inteiros
- CTodos os logaritmos em computação têm base 10, então ela fica implícita
- DA base só importa para n pequeno
5.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
6.Média
Qual é a complexidade de tempo de calcular o n-ésimo número de Fibonacci com uma tabela bottom-up?
- AO(log n)
- BO(n²)
- CO(2ⁿ)
- DO(n)
7.Difícil
Como n! e 2ⁿ se comparam para n grande?
- A2ⁿ cresce mais rápido que n!
- BCrescem no mesmo ritmo
- Cn! cresce mais rápido que 2ⁿ
- Dn! é O(n²)
8.Difícil
Qual definição da classe P está correta?
- AProblemas que exigem tempo exponencial em qualquer computador
- BProblemas cujas soluções podem ser verificadas, mas nunca encontradas, em tempo polinomial
- CProblemas de decisão solúveis por um algoritmo determinístico em tempo polinomial
- DProblemas que podem ser resolvidos em paralelo
Gabarito
- 1. D · Armazenar os resultados de chamadas de função para que chamadas repetidas sejam respondidas da memória
- 2. A · O tempo máximo que ele leva entre todas as entradas de tamanho n
- 3. B · O(n²)
- 4. A · Logaritmos de bases diferentes diferem apenas por um fator constante
- 5. A · O insertion sort tem pouco overhead e é rápido com entradas pequenas ou quase ordenadas
- 6. D · O(n)
- 7. C · n! cresce mais rápido que 2ⁿ
- 8. C · Problemas de decisão solúveis por um algoritmo determinístico em tempo polinomial
Soluções completas passo a passo: pratique este tópico em examproblems.com.