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. ARichiede sempre esattamente un secondo
  2. BElabora esattamente un elemento per ogni secondo di tempo di esecuzione
  3. CPuò essere eseguita una sola volta
  4. DIl suo tempo di esecuzione non cresce con la dimensione dell'input
2.Facile

Che cosa descrive il tempo di esecuzione nel caso peggiore di un algoritmo?

  1. AIl tempo massimo impiegato su tutti gli input di dimensione n
  2. BIl tempo atteso su un input casuale di dimensione n
  3. CIl tempo impiegato sull'input più piccolo
  4. DIl tempo impiegato su un computer lento
3.Facile

La complessità spaziale misura:

  1. ALo spazio su disco del file del programma una volta compilato
  2. BLe dimensioni fisiche del computer
  3. CIl numero di righe di codice
  4. DLa quantità di memoria di cui un algoritmo ha bisogno al crescere dell'input
4.Media

Qual è la complessità temporale dell'algoritmo di Bellman–Ford su un grafo con V vertici ed E archi?

  1. AO(V + E)
  2. BO(V³ × E)
  3. CO(V × E)
  4. DO(E log V)
5.Media

La complessità temporale del Fibonacci ricorsivo ingenuo (fib(n) = fib(n−1) + fib(n−2)) è:

  1. ALineare
  2. BLogaritmica
  3. CCostante
  4. DEsponenziale
6.Media

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

  1. AΩ(n²)
  2. BΩ(log n)
  3. CΩ(n log n)
  4. DΩ(n)
7.Difficile

Quale affermazione sulla selezione del k-esimo elemento più piccolo di un array non ordinato è corretta?

  1. ALa selezione richiede sempre Ω(n log n) perché richiede un ordinamento
  2. BIl quickselect richiede O(log n) nel caso peggiore, perché ricorre su un solo lato del pivot
  3. CIl quickselect richiede O(n) atteso, e la mediana delle mediane garantisce O(n) nel caso peggiore
  4. DLa selezione è possibile solo in O(n²)
8.Difficile

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

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

Soluzioni

  1. 1. D · Il suo tempo di esecuzione non cresce con la dimensione dell'input
  2. 2. A · Il tempo massimo impiegato su tutti gli input di dimensione n
  3. 3. D · La quantità di memoria di cui un algoritmo ha bisogno al crescere dell'input
  4. 4. C · O(V × E)
  5. 5. D · Esponenziale
  6. 6. C · Ω(n log n)
  7. 7. C · Il quickselect richiede O(n) atteso, e la mediana delle mediane garantisce O(n) nel caso peggiore
  8. 8. D · Algoritmo di Kruskal

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