Lista de exercícios de Algoritmos e complexidade com respostas

Lista de exercícios de Algoritmos e complexidade grátis para imprimir: 8 exercícios do nível fácil ao nível de prova, com gabarito. Imprima ou salve como PDF.

Para professores: pode imprimir, copiar e usar em aula gratuitamente. Cada nova folha tem novos valores e o seu próprio gabarito. Agradecemos um link para o ExamProblems na página da sua disciplina.

Nome: ____________________   Data: ____________

1.Fácil

A complexidade de espaço mede:

  1. AO número de linhas de código
  2. BA quantidade de memória que um algoritmo precisa à medida que a entrada cresce
  3. CO tamanho físico do computador
  4. DO espaço em disco do arquivo do programa depois de compilado
2.Fácil

Um algoritmo O(n) leva 3 segundos para n = 1 milhão. Quanto tempo leva, aproximadamente, para n = 2 milhões?

  1. A6 segundos
  2. B3 segundos
  3. C12 segundos
  4. D9 segundos
3.Fácil

Qual é a complexidade de tempo da busca binária em um array ordenado?

  1. AO(n)
  2. BO(log n)
  3. CO(1)
  4. DO(n log n)
4.Média

Qual é a solução da recorrência T(n) = 2T(n − 1) + O(1)?

  1. AO(2ⁿ)
  2. BO(n log n)
  3. CO(n²)
  4. DO(n)
5.Média

Um algoritmo guloso (greedy):

  1. ATesta todas as soluções possíveis
  2. BUsa apenas recursão
  3. CFaz a melhor escolha local em cada passo
  4. DSempre fornece a solução ótima
6.Média

O que a análise amortizada mede?

  1. AO custo de um algoritmo com a melhor entrada
  2. BO custo médio por operação ao longo de uma sequência de operações de pior caso
  3. CO custo da operação individual mais cara em qualquer ponto da sequência
  4. DO custo esperado sobre entradas aleatórias
7.Difícil

Qual definição da classe P está correta?

  1. AProblemas cujas soluções podem ser verificadas, mas nunca encontradas, em tempo polinomial
  2. BProblemas que exigem tempo exponencial em qualquer computador
  3. CProblemas que podem ser resolvidos em paralelo
  4. DProblemas de decisão solúveis por um algoritmo determinístico em tempo polinomial
8.Difícil

O problema da mochila 0/1 resolvido com programação dinâmica leva tempo O(nW). Por que isso é chamado de pseudopolinomial?

  1. APorque o algoritmo é aleatorizado e seu tempo de execução varia a cada entrada
  2. BW é um número, então o tempo é exponencial no número de bits usados para escrever W
  3. CPorque só funciona para W = 0
  4. DPorque n é sempre pequeno

Gabarito

  1. 1. B · A quantidade de memória que um algoritmo precisa à medida que a entrada cresce
  2. 2. A · 6 segundos
  3. 3. B · O(log n)
  4. 4. A · O(2ⁿ)
  5. 5. C · Faz a melhor escolha local em cada passo
  6. 6. B · O custo médio por operação ao longo de uma sequência de operações de pior caso
  7. 7. D · Problemas de decisão solúveis por um algoritmo determinístico em tempo polinomial
  8. 8. B · W é um número, então o tempo é exponencial no número de bits usados para escrever W

Soluções completas passo a passo: pratique este tópico em examproblems.com.