Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
INSERTION SORT: Worst case = Caso medio = Θ(n 2) e Caso ottimo =Θ(n) non ottimale
MAXSORT(selection): Worst case = Caso medio = Caso ottimo = Θ(n 2) non ottimale
BUBBLE SORT: Worst case = Caso medio = Θ(n 2) e Caso ottimo =Θ(n) non ottimale
QUICK SORT: Worst case = Θ(n 2) e Caso medio = Caso ottimo = Θ(n ∙ logn)
MERGE SORT: Worst case = Caso medio = Caso ottimo = Θ(n ∙ logn) è ottimo
Gli esatti confronti nel INSERTION,MAX,BUBBLE,QUICK sono = n(n−1)/2 confronti
1) Un’algo di ordinamento che procede per confronti può essere associato per ogni lunghezza n della lista
da ordinare, ad un albero binario. Quante devono essere le foglie dell’albero? n!
2) Sia f =n ∙ log ( n+10 n11/10 ) individuare se ci sono risposte false tra le seguenti:
A. f ∈ o(n) B. f ∈ Θ(n11/10 ) C. f Ω(nlogn)
post-order: fdbgheca
in-order: bfdacgeh
pre-order: abdfcegh
4) Un albero di grado K=3 e di profondità p=4. Indicare quale dei gruppo di numeri seguenti contiene
numeri totali di nodi possibili:
A. 3,7,121(NO per il min) B.5.9.150 (NO per il max) C. 8,9,65 D.6,8,125 (no per il max)
k p+1−1
Formule usata per max e min nodi possibili: MAX= MIN = p+1
k −1
5) Il radix sort (lineare) può essere applicato anche a numeri binari raggruppando per diminuire il numero di
passi ed aumentare il numero di bucket, a gruppi di 3 o 4 bit vicini. Può funzionare anche su numeri in
virgola mobile?
Sì solo alla condizione che l’esponente sia lo stesso e il segno pure
7) Si applichi la tecnica greedy per il problema del set covering con l’insieme S={1,2,3,4,5,6,7,8,9} ed i
sottoinsiemi S1={8,9}, S2={6,7}, S3={5,6}, S4={1,4,5,6}, S5={4,5,8}, S6={4,5,6}, S7={2,3} di peso uguale
Quale risultato è possibile?
A. S4, S7, S1, S2 B. S4, S6, S2, S7 C. S4, S1, S2, S6 D.nessuno di questi
La risposta A è l’unica che risolve il problema set covering è infatti l’unica combinazione di sottoinsiemi a
contenere tutti gli elementi dell’insieme S
11)Il grafo K 3,3 (vedi figura su esame non c’è) è Euleriano? È Hemiltoniano?
Un grafo si dice Euleriano se i gradi(il grado di un nodo è il numero di lati che lo toccano) di tutti i nodi sono
pari
Un grafo si dice Semi-Euleriano se i gradi di tutti i nodi sono pari, tranne due.
Si dice cammino hamiltoniano un percorso che tocca tutti i nodi del grafo una sola volta (cioè ogni nodo del
percorso ha grado uguale a 2). Esiste una condizione sufficiente affinché il grafo sia hamiltoniano:
nodi ≥3 e grado ¿ ≥ nodi/2
12) Qual è l’efficienza di un algoritmo parallelo che con un processore ha un tempo di esecuzione pari a 50
e con 20 processori un tempo pari a 5? A. 0,5 B. 0,25 C. 0,1 D. nessuna delle prece
S ( p ) T ( n ,1 )
Si usa la formula E ( n , p )= = dove T(n,p) è il tempo di esecuzione dipendente dalla
p pT (n , p)
50
dimensione di input n e dal numero p di processori, nel nostro caso E= =0,5
20 ∙ 5
13) Qual è la cardinalità del massimo insieme indipendente di vertici del grafo dell’esercizio 8?
A. 2 B. 3 C. 4 (esempio: A,I,F,G) D. 5 E. nessuna precedenti
Un insieme di vertici di un grafo si dice indipendente se non comprende vertici adiacenti. In questo es mi
chiedeva il numero di vertici nel massimo indipendente. Un insieme indipendente è massiamle se
aggiungendo un nodo qualunque diventa dipendente
TEMA 2
2) Si abbia un albero binario completo. I nodi si possono memorizzare in posizioni consecutive in un vettore.
Se un nodo è memorizzato alla posizione 120 (prima posizione=1), in quali posizioni sono memorizzati i suoi
figli?
A. 121,122 B. 221,222 C. 241,242 D. 440,441 E. nessuna delle precedenti specifica…(240,241)
Uso la formula: posizfigli =(2 ∙ posiz padre ,2 ∙ posiz padre +1) nel nostro caso posiz_figli=[120*2 , (120*2)+1]
5) Quanti nodi contiene una CLIQUE massima del grafo K 5 e quanti per il grafo K 3,3 :
k5 k 3,3
Una clique massima contiene 5 nodi per il grafo K 5 e 2 nodi per il grafo K 3,3
Una cricca (o clique) in un grafo è un insieme V di vertici tale che, per ogni coppia di vertici in V, esiste un
arco che li collega.
7) Sia f =n 4 /10 log (n) quale o quali delle seguenti asserzioni è vera:
A. f ∈ o(n4 /10 ) B. f ∈ O(n4 / 10) C. f ω(n 4 /10 ∙ logn)
8) Si suppongo di voler trovare il massimo di 128 numeri col metodo del torneo di tennis. I processori
disponibili sono 16, per cui i confronti del primo e del secondo turno non possono essere fatti tutti
contemporaneamente. L’efficienza dell’algoritmo vale circa:
A. 0,5 B. 0,4 C. 0,6 D. 0,7
n° colpi singolaCPU
La forumula usata è eff =
(n° CPU∗n ° confronti)
Se invece ho torneo di tennis con n numeri e singola CPU uso la formula eff =2 /log 2 n
TEMA3
La clique massima è BCED ogni nodo di quel gruppo e collegato agli altri 3
2)Quanti nodi contiene un insieme dominante di cardinalità minima del grafo K7 e quanti un isieme
dominante di cardinalità minima del grafo dell’esercizio1?
Per il K7 la risposta è 1 per il grafo dell’es precedente la risposta è 2 (A,C)
8) Sia f =n3 log ( n ) +1000 n61 /20 individuare se ce ne sono asserzioni false:
A. f ∈ o( n3,2) B. f ∈ O(n3 ∙ log(n)) C. f ω(n3 ∙ logn)
care
9) Un grafo planare a 6 facce e 10 lati. Quanti sono i vertici? Risp esatta 6 vertici
Uso la formula facce+vertici=lati+2 nel nostro caso vertici=10+2−6=6
In caso di risultato con la virgola prendo l’intero superiore
ALTRI TEMI
post-order : fgdbheca
in-order: fdgbache
pre-order: abdfgceh
*) Si applichi la tecnica FFD per il problema del bin-packing con elementi delle seguenti dimensioni: (0.7,
0.2, 0.8, 0.5, 0.3, 0.2, 0.6, 0.1). Al termine il contenuto dei bin sarà a partire dal primo:
(0.8, 0.2) (0.7, 0.3) (0.6, 0.3, 0.1) (0.5) parto dal più grande per far arrivare ogni gruppo a 1 finchè riesco
*)Che differenza c’è tra NP-completo ed NP-hard? NP-hard può non essere in NP
*) Si supponga di aver a disposizione due programmi di sort lineari: il radix ed il counting sort. Data una lista
di n interi da ordinare compresi tra N min ed N m ax il radix è una scelta migliore se: N min −N max ≫ n