Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
A.A. 2006/07
Parte I
Notazioni O, Ω e Θ
Sia f (n) = 3n2 + 7n. Dobbiamo dimostrare che (1) f (n) = O(n2 )
e (2) f (n) = Ω(n2 )
f (n) = 3n2 + 7n
≤ 3n2 + 7n2 per ogni n ≥ n0 = 0
= 10n2
Basta scegliere c = 10 ed n0 = 0
f (n) = 3n2 + 7n
≥ 3n2 per ogni n ≥ n0 = 0
Basta scegliere c2 = 3 ed n0 = 0
Alcune varianti
Alcune varianti
Dimostriamo che
Alcune varianti
Ricapitolando:
e in maniera analoga
Parte II
Ricorrenze
1
bn/2c + dn/2e = n per ogni intero n
Di Berardini, Merelli Algoritmi e Strutture Dati
Metodo della sostituzione
Ricorrenze Metodo di iterazione
Metodo Master
Home-Work
Dimostrare che
(
c + T (n/2) se n > 1
T (n) =
1 se n = 1
T (n) = n + 4T (n/2)
= n + 4n/2 + 4 · 4T (n/4) = 3n + 16T (n/4)
= 3n + 16n/4 + 16 · 4T (n/8) = 7n + 64T (n/8)
= 7n + 64n/8 + 64 · 4T (n/16) = 15n + 256T (n/16)
T (n) = n3 + 3T (n/3)
= n3 + 3(n/3)3 + 9T (n/9) = n3 + n3 /9 + 9T (n/9)
= n3 + n3 /9 + 9(n/9)3 + 27T (n/27)
= n3 + n3 /9 + n3 /92 + 27T (n/27)
= ...
k−1
P n3 k−1
P 1 i
= + 3 k T (n/3k ) = n3 ( 9 ) + 3k T (n/3k )
9 i
i=0 i=0
In questo caso ci fermiamo quando n/3k = 1, ossia k = log3 n,
quindi:
log3 n−1
X 1 1 − (1/9)log3 n 1 − (1/9log3 n ) 1 − (1/nlog3 9 )
( )i = = =
9 1 − 1/9 8/9 8/9
i=0
1 − (1/n2 ) 9 9 n2 − 1
= = (1 − 1/n2 ) =
8/9 8 8 n2
Allora:
log3 n−1
3
X 1 9 n2 − 1
T (n) = n ( )i + n = n3 +n
9 8 n2
i=0
9
= n(n2 − 1) + n = Θ(n3 )
8
Di Berardini, Merelli Algoritmi e Strutture Dati
Metodo della sostituzione
Ricorrenze Metodo di iterazione
Metodo Master
Home-Work