Sei sulla pagina 1di 4

Esercizi di Algoritmi e Strutture Dati I

Luigi Starace
27 settembre 2014
Indice
1 Vericare o confutare che n
2
+ 10n = (n
2
) 2
2 Vercare o confutare che 0, 05n
2
nlog
2
(n) =

n
2

3
3 Vericare o confutare che

(n) + log
2
(n) = (log
2
(n)) 4
1
1 Vericare o confutare che n
2
+ 10n = (n
2
)
La verica immediata segue dal fatto che
() lim
n

n
2
+ 10n
n
2

= lim
n

1 +
10
n

= 1 > 0
Procediamo quindi per individuare le costanti positive n
0
, c
1
, c
2
per le quali si ha, n n
0
,
() n
2
+10n = (n
2
) n > n
0
, c
1
n
2
n
2
+10n c
2
n
2

c
1
n
2
n
2
+ 10n

n
2
+ 10n c
2
n
2

che equivale, poich`e n


2
> 0, a:

c
1

n
2
+ 10n
n
2

n
2
+ 10n
n
2
c
2

c
1

n
2
+ 10n
n
2
c
2
Studiando la funzione
f(n) =
n
2
+ 10n
n
2
= 1 +
10
n
possiamo ricavare i valori per n
0
, c
1
, c
2
. Dal limite trovato in (), sappiamo che la funzione ha un
asintoto orizzontale: y = 1.
Calcoliamo la derivata prima:

1 +
10
n

=
10
n
2
Dal fatto che la derivata prima `e sempre negativa, per ogni valore di n, deduciamo che la funzione `e
sempre decrescente. Essendo f(n) continua per n > 0, decrescente, ed avendo come asintoto la retta
y = 1, deduciamo che la funzione resta sempre al di sopra dellasintoto, dal momento che, se per assurdo
assumesse valori minori di 1, allora, avendo come asintoto y=1, dovrebbe poi crescere, contraddicendo
la sua costante decrescenza. Da ci`o segue che c
1
= 1, n
0
> 0, c
2
= f(n
0
) sono costanti che soddisfano e
confermano la denizione ().
Volendo esibire una terna particolare, c
1
= 1, n
0
= 1, c
2
= f(1) = 11.
0 2 4 6 8 10 12
0
2
4
6
8
10
12
n
f
(
n
)
Graco della funzione
n
2
+10n
n
2
y = 1
2
2 Vercare o confutare che 0, 05n
2
nlog
2
(n) =

n
2

Calcoliamo innanzitutto il limite


lim
n

0, 05n
2
nlog
2
(n)
n
2

= lim
n

0, 05
log
2
(n)
n

= 0, 05 > 0
dal quale deduciamo che 0, 05n
2
nlog
2
(n) =

n
2

. Procediamo quindi per trovare le costanti positive


c
1
, c
2
, n
0
per le quali si ha, n n
0
,
c
1
n
2
0, 05n
2
nlog
2
(n) c
2
n
2
c
1

0, 05n
2
nlog
2
(n)
n
2
c
2
Come nellesercizio precedente, proseguiamo studiando la funzione
f(n) =
0, 05n
2
nlog
2
(n)
n
2
= 0, 05
log
2
(n)
n
e la sua derivata

0, 05
log
2
(n)
n

=
1

nlog(2)

n log
2
(n) 1
n
2
=
1log
2
(n)log(2)
log(2)
n
2
=
1log(n)
log(2)
n
2
=
1 log(n)
log(2) n
2
=
log(n) 1
log(2) n
2
Osservando la derivata prima notiamo che, per ogni n > e, essa `e positiva, implicando che n > e la
funzione f(n) `e crescente. Decisamente pi` u ostica `e la valutazione degli zeri della funzione (equazioni
trascendenti?). Non avendo stretto bisogno di valutare con buona approssimazione tali zeri, ci limitiamo
a notare che f(200) 0.01178.. > 0. Abbiamo quindi sucienti elementi per concludere la nostra verica.
Il nostro c
2
potrebbe essere 0, 05, cos` come qualsiasi altro numero postivo maggiore di 0, 05. Come n
0
possiamo scegliere 200 e come c
1
scegliamo quindi f(n
0
) = f(200) 0, 01178. Qualsiasi n
0
maggiore di
200 soddisferebbe comunque le nostre richieste. Il limite inferiore per la scelta di n
0
, calcolato usando
GNU Octave, `e 143.247.
0 200 400 600 800 1,000
0
5 10
2
0.1
0.15
0.2
n
f
(
n
)
Graco della funzione
0,05n
2
nlog
2
(n)
n
2
y =
1
20
= 0, 05
3
3 Vericare o confutare che

(n) + log
2
(n) = (log
2
(n))
Calcoliamo innanzitutto il limite
lim
n

n + log
2
(n)
log
2
(n)

= lim
n

1 +

n
log
2
(n)

= 1 + lim
n

n log(2)
2

=
Dal momento che tale limite non `e nito, non potr`o trovare una costante positiva c
2
che sia maggiore di

n+log
2
(n)
log
2
(n)
, n > n
0
, per qualsiasi scelta di n
0
.
Dunque la proposizione

n + log
2
(n) = (log
2
(n)) `e falsa.
0 0.2 0.4 0.6 0.8 1
10
6
0
20
40
60
80
100
n
f
(
n
)
Graco della funzione

n+log
2
(n)
log
2
(n)
4