Docente: Giuseppe Scollo
Università di Catania, sede di Comiso (RG)
Facoltà di Scienze Matematiche, Fisiche e Naturali
Corso di Studi in Informatica applicata, AA 2007-8
cosa hanno di speciale? sono di uso frequente nell'analisi degli algoritmi ...
eccone un quadro sintetico di valori tipici e approssimazioni (giustificate appresso)
costanti speciali :
e ≈
2.71828,
γ ≈
0.57721,
φ
=
( 1+√
5
)/2 ≈
1.61803
ln 2 ≈
0.693147,
lg e = 1/ln 2 ≈
1.44269
funzione | nome | valore tipico | approssimazione |
⌊ x⌋ |
base (floor) | ⌊ 3.14⌋ = 3 |
x |
⌈ x⌉ |
tetto (ceiling) | ⌈ 3.14⌉ = 4 |
x |
lg N | logaritmo binario | lg 1024 = 10 | 1.44 ln N |
HN | numeri armonici | H10 ≈ 2.9 |
ln N + γ |
FN | numeri di Fibonacci | F10 = 55 | φ N/√ 5 |
N! | fattoriale | 10! = 3628800 | (N/e)N |
lg(N!) | lg(100!) ≈ 520 |
N lg N - 1.44N |
γ
misura l'area della differenza tra la funzione a gradino
y = 1/⌊
x⌋
e la funzione
y = 1/x,
per x ≥
1,
v. figura:
γ
si coglie dall'approssimazione
≈
ln N + γ
+ 1/(12N)
∫
1
N
dx/x
log
,
rispetto al calcolo diretto dalla definizione
≥
2 ,
con
F0 = 0
e
F1 = 1
φ
=
( 1+√
5
)/2 ≈
1.61803
≈
φ
N/√
5
definizione induttiva: N! = (N-1)! N , per N > 0 , con 0! = 1
≈
N lg N - N lg e +
lg√
2 π
N
≈
N lg N - 1.44 N
che vuol dire esattamente che una funzione è un'approssimazione asintotica di un'altra?
la notazione O grande designa una limitazione asintotica della velocità di crescita:
def. : g(N) è O(f(N)) se esistono costanti c e N0 tali che g(N) < cf(N) per ogni N>N0
utilità della notazione O grande:
discendono direttamente dalla definizione molte proprietà della notazione O grande che permettono spesso di manipolarne le espressioni "come se la O non ci fosse", ad esempio:
la limitazione asintotica espressa dalla notazione O grande non è sufficiente a caratterizzare la velocità di crescita
la notazione ≈
(letta "all'incirca")
designa l'approssimazione asintotica
di una funzione con un'altra:
def. :
f(N) ≈
g(N)
se f(N) = g(N)+h(N)
e h(N)/g(N) → 0 per
N →
∞
per caratterizzare solo la velocità di crescita l'approssimazione asintotica chiede troppo... basta invece il seguente concetto
la notazione ∝
(letta "proporzionale a")
designa la proporzionalità asintotica
di una funzione ad un'altra:
def. :
f(N) ∝
g(N)
se esiste una costante c tale che
f(N) ≈
cg(N)