Scheda di esercizi di Algoritmi e complessità con soluzioni

Scheda di esercizi di Algoritmi e complessità gratuita e stampabile: 8 esercizi dal livello facile a quello d’esame, con le soluzioni. Stampala o salvala come PDF.

Per i docenti: gratuita da stampare, copiare e usare in classe. Ogni nuova scheda ha nuovi valori e le sue soluzioni. Un link a ExamProblems nella pagina del corso è molto apprezzato.

Nome: ____________________   Data: ____________

1.Facile

Che cosa significa che un'operazione ha tempo O(1)?

  1. AElabora esattamente un elemento per ogni secondo di tempo di esecuzione
  2. BRichiede sempre esattamente un secondo
  3. CIl suo tempo di esecuzione non cresce con la dimensione dell'input
  4. DPuò essere eseguita una sola volta
2.Facile

Quale di queste cresce più lentamente quando n diventa grande?

  1. AO(n log n)
  2. BO(n)
  3. CO(log n)
  4. DO(n²)
3.Facile

Qual è la complessità temporale della ricerca lineare in un array non ordinato di n elementi (caso peggiore)?

  1. AO(n²)
  2. BO(n)
  3. CO(1)
  4. DO(log n)
4.Media

Qual è la complessità temporale di: for i = 1 to n: (j = 1; while j < n: j = j × 2)?

  1. AO(n log n)
  2. BO(log n)
  3. CO(n)
  4. DO(n²)
5.Media

Che cosa calcola l'algoritmo di Floyd–Warshall, e con quale velocità?

  1. AUn ordinamento topologico in O(V²)
  2. BUn albero ricoprente minimo in O(E log V)
  3. CI cammini minimi da un vertice sorgente a tutti gli altri in O(V + E)
  4. DI cammini minimi tra tutte le coppie di vertici in O(V³)
6.Media

Qual è la complessità temporale del quicksort nel caso peggiore?

  1. AO(n)
  2. BO(n²)
  3. CO(log n)
  4. DO(n log n)
7.Difficile

Il problema dello zaino 0/1 risolto con la programmazione dinamica richiede tempo O(nW). Perché si dice pseudo-polinomiale?

  1. APerché funziona solo per W = 0
  2. BPerché n è sempre piccolo
  3. CW è un numero, quindi il tempo è esponenziale nel numero di bit usati per scrivere W
  4. DPerché l'algoritmo è randomizzato e il suo tempo di esecuzione varia a ogni input
8.Difficile

Prendere entrambi gli estremi di ogni arco di un matching massimale dà una copertura dei vertici. Quanto è buona questa copertura?

  1. AAl massimo log n volte il minimo
  2. BDi qualità ignota rispetto all'ottimo
  3. CAl massimo il doppio della dimensione di una copertura dei vertici minima
  4. DSempre una copertura dei vertici minima

Soluzioni

  1. 1. C · Il suo tempo di esecuzione non cresce con la dimensione dell'input
  2. 2. C · O(log n)
  3. 3. B · O(n)
  4. 4. A · O(n log n)
  5. 5. D · I cammini minimi tra tutte le coppie di vertici in O(V³)
  6. 6. B · O(n²)
  7. 7. C · W è un numero, quindi il tempo è esponenziale nel numero di bit usati per scrivere W
  8. 8. C · Al massimo il doppio della dimensione di una copertura dei vertici minima

Soluzioni complete passo passo: esercitati su questo argomento su examproblems.com.