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

Qual è la complessità temporale nel caso peggiore dell'insertion sort?

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

Quanta memoria aggiuntiva usa un merge sort standard su array?

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

Accedere a un elemento di un array tramite indice richiede:

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

Una funzione esegue un ciclo di n iterazioni e poi, separatamente, un altro ciclo di n iterazioni. Qual è la sua complessità temporale?

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

Il limite inferiore per l'ordinamento basato su confronti nel caso peggiore è:

  1. AΩ(n log n)
  2. BΩ(n)
  3. CΩ(n²)
  4. DΩ(log n)
6.Media

Qual è la soluzione della ricorrenza T(n) = T(n/2) + O(1)?

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

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

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

Quale algoritmo trova un albero ricoprente minimo aggiungendo ripetutamente l'arco più economico che non forma un ciclo?

  1. AFloyd-Warshall
  2. BAlgoritmo di Dijkstra
  3. CAlgoritmo di Kruskal
  4. DAlgoritmo di Prim a partire da un nodo

Soluzioni

  1. 1. C · O(n²)
  2. 2. C · O(n)
  3. 3. A · O(1)
  4. 4. D · O(n)
  5. 5. A · Ω(n log n)
  6. 6. B · O(log n)
  7. 7. A · W è un numero, quindi il tempo è esponenziale nel numero di bit usati per scrivere W
  8. 8. C · Algoritmo di Kruskal

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