1.Fácil
Um algoritmo O(n) leva 3 segundos para n = 1 milhão. Quanto tempo leva, aproximadamente, para n = 2 milhões?
- A12 segundos
- B9 segundos
- C3 segundos
- D6 segundos
2.Fácil
Qual é o O grande de 3n² + 5n + 2?
- AO(5n)
- BO(3n²)
- CO(n²)
- DO(n³)
3.Fácil
O que é o caso base de uma função recursiva?
- AO caso com a maior entrada, que é tratado antes de quaisquer chamadas recursivas
- BUm caso respondido diretamente, sem fazer outra chamada recursiva
- CA primeira linha da função
- DA chamada que usa mais memória
4.Média
Qual é a complexidade de tempo de: for i = 1 to n: for j = 1 to i: faça trabalho O(1)?
- AO(n)
- BO(n³)
- CO(n²)
- DO(n log n)
5.Média
Quanto espaço de pilha usa uma função fatorial recursiva simples fact(n) = n × fact(n − 1)?
- AO(n)
- BO(log n)
- CO(1)
- DO(n²)
6.Média
Qual é a complexidade de tempo de: for i = 1 to n: (j = 1; while j < n: j = j × 2)?
- AO(n²)
- BO(n)
- CO(n log n)
- DO(log n)
7.Difícil
O problema da parada mostra que:
- ATodo programa acaba parando
- BLaços devem ser evitados
- CNenhum algoritmo consegue decidir, para todo programa e toda entrada, se o programa para
- DAlguns programas rodam mais rápido em computadores mais rápidos, então a parada depende do hardware
8.Difícil
Usando o teorema mestre, T(n) = 8T(n/2) + O(n²) tem como solução:
- AΘ(n²)
- BΘ(n³)
- CΘ(n² log n)
- DΘ(n log n)
Gabarito
- 1. D · 6 segundos
- 2. C · O(n²)
- 3. B · Um caso respondido diretamente, sem fazer outra chamada recursiva
- 4. C · O(n²)
- 5. A · O(n)
- 6. C · O(n log n)
- 7. C · Nenhum algoritmo consegue decidir, para todo programa e toda entrada, se o programa para
- 8. B · Θ(n³)
Soluções completas passo a passo: pratique este tópico em examproblems.com.