1.Fácil
O que é o caso base de uma função recursiva?
- AUm caso respondido diretamente, sem fazer outra chamada recursiva
- BA chamada que usa mais memória
- CO caso com a maior entrada, que é tratado antes de quaisquer chamadas recursivas
- DA primeira linha da função
2.Fácil
Acessar um elemento de um array pelo índice leva:
- AO(n²)
- BO(log n)
- CO(1)
- DO(n)
3.Fácil
Qual algoritmo de ordenação escolhe um pivô e particiona o array em elementos menores e maiores?
- AInsertion sort
- BBubble sort
- CMerge sort
- DQuicksort
4.Média
Qual é a complexidade de tempo amortizada de adicionar ao final de um array dinâmico que dobra sua capacidade quando fica cheio?
- AO(n)
- BO(n²)
- CO(log n)
- DO(1)
5.Média
Quantos níveis tem a recursão do merge sort para um array de n elementos?
- ACerca de log₂ n
- BCerca de n / 2
- CCerca de √n
- DCerca de n
6.Média
É correto dizer que um algoritmo O(n²) também é O(n³)?
- ANão, porque n³ é menor que n² para n grande
- BNão, porque o O grande deve sempre dar a taxa de crescimento exata da função
- CSim, porque o O grande é um limite superior e n² não cresce mais rápido que n³
- DSim, mas só se n for menor que 100
7.Difícil
O que decorreria se alguém encontrasse um algoritmo de tempo polinomial para um problema NP-completo?
- AO problema da parada se tornaria decidível
- BTodo problema em NP poderia ser resolvido em tempo polinomial, então P = NP
- CTodos os algoritmos de tempo exponencial passariam imediatamente a rodar em tempo linear
- DSó aquele problema passaria para P
8.Difícil
22n está em O(2ⁿ)?
- ANão, porque 22n cresce mais devagar que 2ⁿ
- BSim, porque fatores constantes no expoente são sempre ignorados no O grande
- CNão, porque 22n = 4ⁿ e 4ⁿ / 2ⁿ = 2ⁿ cresce sem limite
- DSim, porque ambos são exponenciais
Gabarito
- 1. A · Um caso respondido diretamente, sem fazer outra chamada recursiva
- 2. C · O(1)
- 3. D · Quicksort
- 4. D · O(1)
- 5. A · Cerca de log₂ n
- 6. C · Sim, porque o O grande é um limite superior e n² não cresce mais rápido que n³
- 7. B · Todo problema em NP poderia ser resolvido em tempo polinomial, então P = NP
- 8. C · Não, porque 22n = 4ⁿ e 4ⁿ / 2ⁿ = 2ⁿ cresce sem limite
Soluções completas passo a passo: pratique este tópico em examproblems.com.