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

Quali sono i tre passi di un algoritmo divide et impera?

  1. ADividi, risolvi (impera), combina
  2. BLeggi, calcola, scrivi
  3. CIndovina, verifica, ripeti
  4. DOrdina, cerca, restituisci
2.Facile

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

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

Che cos'è un algoritmo?

  1. AUna struttura dati che memorizza numeri
  2. BUn linguaggio di programmazione progettato per scrivere formule matematiche
  3. CUna sequenza finita di passi ben definiti che risolve un problema
  4. DQualsiasi programma con un'interfaccia grafica
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(log n)
  2. BO(n)
  3. CO(2ⁿ)
  4. DO(n²)
5.Media

Che cosa significa che un problema ha una sottostruttura ottima?

  1. AOgni sottoproblema ha la stessa dimensione
  2. BUna soluzione ottima può essere costruita da soluzioni ottime dei suoi sottoproblemi
  3. CIl problema si può risolvere in tempo costante
  4. DIl problema ha esattamente una soluzione ottima, condivisa da ogni sottoproblema
6.Media

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

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

Quale di questi problemi di soddisfacibilità è noto per essere risolvibile in tempo polinomiale?

  1. ASAT generale su formule in forma normale congiuntiva
  2. B2-SAT, in cui ogni clausola ha al massimo due letterali
  3. C3-SAT, in cui ogni clausola ha esattamente tre letterali
  4. DLa soddisfacibilità dei circuiti
8.Difficile

Quale tecnica garantisce al quicksort un tempo di esecuzione atteso O(n log n) su qualsiasi input?

  1. AOrdinare l'input prima di eseguire il quicksort
  2. BScegliere sempre il primo elemento
  3. CUsare la ricorsione solo sul lato sinistro
  4. DScegliere il pivot in modo uniformemente casuale

Soluzioni

  1. 1. A · Dividi, risolvi (impera), combina
  2. 2. D · O(log n)
  3. 3. C · Una sequenza finita di passi ben definiti che risolve un problema
  4. 4. B · O(n)
  5. 5. B · Una soluzione ottima può essere costruita da soluzioni ottime dei suoi sottoproblemi
  6. 6. A · O(2ⁿ)
  7. 7. B · 2-SAT, in cui ogni clausola ha al massimo due letterali
  8. 8. D · Scegliere il pivot in modo uniformemente casuale

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