1.Fácil
O que é memoização?
- ALiberar memória depois que uma função retorna
- BArmazenar os resultados de chamadas de função para que chamadas repetidas sejam respondidas da memória
- CConverter automaticamente a recursão em um laço equivalente, de modo que não seja preciso pilha de chamadas
- DEscrever comentários ao lado de cada linha de código
2.Fácil
Qual algoritmo de ordenação troca repetidamente elementos adjacentes que estão na ordem errada?
- AQuicksort
- BBubble sort (ordenação por bolha)
- CHeap sort
- DMerge sort (ordenação por intercalação)
3.Fácil
Um laço começa com i = 1 e dobra i a cada iteração até i > n. Quantas iterações ele executa?
- ACerca de n / 2
- BCerca de log₂ n
- CCerca de n²
- DCerca de n
4.Média
O que significa um problema ter subestrutura ótima?
- AUma solução ótima pode ser construída a partir de soluções ótimas dos seus subproblemas
- BTodos os subproblemas têm o mesmo tamanho
- CO problema tem exatamente uma solução ótima, compartilhada por todos os subproblemas
- DO problema pode ser resolvido em tempo constante
5.Média
Qual é a solução da recorrência T(n) = T(n/2) + O(1)?
- AO(n)
- BO(1)
- CO(n log n)
- DO(log n)
6.Média
Qual é a complexidade de tempo de: for i = 1 to n: (j = 1; while j < n: j = j × 2)?
- AO(log n)
- BO(n²)
- CO(n)
- DO(n log n)
7.Difícil
Caminhos simples mínimos podem ser encontrados em tempo polinomial. O que se sabe sobre encontrar o caminho simples mais longo entre dois vértices num grafo geral?
- AÉ indecidível
- BPode ser resolvido pelo algoritmo de Dijkstra com os pesos negados
- CÉ sempre solúvel em O(V + E)
- DÉ NP-difícil
8.Difícil
O insertion sort roda em O(n) com entrada ordenada. Isso contradiz o limite inferior Ω(n log n) da ordenação por comparação?
- ANão, o limite inferior vale para o pior caso entre todas as entradas, não para cada entrada
- BSim, portanto o limite inferior está errado
- CNão, porque o insertion sort não é uma ordenação por comparação
- DSim, mas só para arrays com menos de 100 elementos
Gabarito
- 1. B · Armazenar os resultados de chamadas de função para que chamadas repetidas sejam respondidas da memória
- 2. B · Bubble sort (ordenação por bolha)
- 3. B · Cerca de log₂ n
- 4. A · Uma solução ótima pode ser construída a partir de soluções ótimas dos seus subproblemas
- 5. D · O(log n)
- 6. D · O(n log n)
- 7. D · É NP-difícil
- 8. A · Não, o limite inferior vale para o pior caso entre todas as entradas, não para cada entrada
Soluções completas passo a passo: pratique este tópico em examproblems.com.