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

O que é o caso base de uma função recursiva?

  1. AUm caso respondido diretamente, sem fazer outra chamada recursiva
  2. BA chamada que usa mais memória
  3. CO caso com a maior entrada, que é tratado antes de quaisquer chamadas recursivas
  4. DA primeira linha da função
2.Fácil

Acessar um elemento de um array pelo índice leva:

  1. AO(n²)
  2. BO(log n)
  3. CO(1)
  4. DO(n)
3.Fácil

Qual algoritmo de ordenação escolhe um pivô e particiona o array em elementos menores e maiores?

  1. AInsertion sort
  2. BBubble sort
  3. CMerge sort
  4. 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?

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

Quantos níveis tem a recursão do merge sort para um array de n elementos?

  1. ACerca de log₂ n
  2. BCerca de n / 2
  3. CCerca de √n
  4. DCerca de n
6.Média

É correto dizer que um algoritmo O(n²) também é O(n³)?

  1. ANão, porque n³ é menor que n² para n grande
  2. BNão, porque o O grande deve sempre dar a taxa de crescimento exata da função
  3. CSim, porque o O grande é um limite superior e n² não cresce mais rápido que n³
  4. 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?

  1. AO problema da parada se tornaria decidível
  2. BTodo problema em NP poderia ser resolvido em tempo polinomial, então P = NP
  3. CTodos os algoritmos de tempo exponencial passariam imediatamente a rodar em tempo linear
  4. DSó aquele problema passaria para P
8.Difícil

22n está em O(2ⁿ)?

  1. ANão, porque 22n cresce mais devagar que 2ⁿ
  2. BSim, porque fatores constantes no expoente são sempre ignorados no O grande
  3. CNão, porque 22n = 4ⁿ e 4ⁿ / 2ⁿ = 2ⁿ cresce sem limite
  4. DSim, porque ambos são exponenciais

Gabarito

  1. 1. A · Um caso respondido diretamente, sem fazer outra chamada recursiva
  2. 2. C · O(1)
  3. 3. D · Quicksort
  4. 4. D · O(1)
  5. 5. A · Cerca de log₂ n
  6. 6. C · Sim, porque o O grande é um limite superior e n² não cresce mais rápido que n³
  7. 7. B · Todo problema em NP poderia ser resolvido em tempo polinomial, então P = NP
  8. 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.