Вы находитесь на странице: 1из 5

Anlise de Equao de Recorrncia

Carlos Eduardo Ramisch - Carto: 134657


Soraya Sybele Hossain Carto 124917

INF05515 - Complexidade de Algoritmos


Prof. Luciana Salete Buriol
Porto Alegre, 30 de setembro de 2006

1 Introduo
Neste trabalho, ser feita uma anlise completa, de acordo com os mtodos aprendidos em aula,
de uma equao de recorrncia que pode vir a representar o desempenho de determinado algoritmo
recursivo baseado no mtodo da diviso e conquista. Ignorando a origem da equao, ser
necessrio apenas considerar aspectos matemticos, e tudo o que se precisa como ponto de partida
a equao de recorrncia (equao nmero 10 da lista enunciada), que a seguinte:

T n=4 T n/2n
2
n

2 Mtodo da rvore de recorrncia

n N0

n 5 n 5 n 5 n 5 N1
2 2 2 2
2 2 2 2

n 52 n 52 n 52 n 52 n 52 n 52 n 52 n 52 N2
2 2 2 2 (...) 2 2 2 2
2 2 2 2 2 2 2 2

n 52 n 52 n 52 n 52 n 52 n 52 n 52 n 52 N3

23 23 23 23 (...) 23 23 23 23

1111 1111 1111 1111 (...) 1111 1 1 1 1 1 1 1 1 1 1 1 1 Nk

Imagem 2.1 Esquemtico da rvore de recorrncia que representa T n=4 T n/2n2 n

1
2.1 Qual o tamanho do subproblema no nvel i?

No nvel 0, supe-se que o problema tem dimenso n.


n 1
No nvel 1, o problema tem dimenso = n
2 2
1
n
No nvel 2, o problema tem dimenso 2 11
= n
2 22
11
n
No nvel 3, o problema tem dimenso 22 111
= n
2 222
(...)
i vezes

No nvel i, o problema tem dimenso


111 1 1
n= n=
n
i i
222 2 2 2

2.2 Qual o custo do n no nvel i?

Nvel 0, o custo do n n 2 n=n5 /2


Nvel 1, o custo do n
2
=

n 2 n n2 n 5 /2 5/ 2 n 5 /2
2 22 2
=n / 2 =
2


n n n n
2 2 5/ 2 5 /2
n n n 5/ 2

Nvel 2, o custo do n 22 = = = =
22 24 2 25 5
2
2 22
2


n n n n n5 /2
2 2 5/ 2
n n 5/ 2

Nvel 3, o custo do n 23 = = = =
2 3 2 6 23/ 2 215/ 2 5
3
2 23
2
(...)


n 2 n n2 n n5/ 2 n 5/ 2
Nvel i, o custo do n 2i 2i = 22 i 2i / 2 = i 5 = 2 i
22

2.3 Qual o nmero de ns por nvel? Qual o nmero de ns no nvel


i?
0
No nvel 0, tem-se 1=4 n.
No nvel 1, tem-se 4=41 ns.
2
No nvel 2, tem-se 16=4 ns.
3
No nvel 3, tem-se 64=4 ns.
(...)
i
No nvel i, tem-se 4 ns.

2.4 Qual o custo de cada nvel? Qual o custo do nvel i?

O custo de um nvel i dado pelo nmero de ns no nvel i vezes o custo de cada um desses ns.

2
n 5 /2 4i 5/ 2 4 i 5 /2 5 /2 1/ 2 i 5 / 2 1 i
i
Custo do nvel i = 4 i = 5/ 2 i n = 5/ 2 n =n 2 =n
2 2 2 2

2.5 Qual a altura da rvore? Qual o nmero de nveis da rvore?

Supe-se que o critrio de encerramento da recurso, para um algoritmo de diviso e conquista,


quando n = 1, ou seja, o custo do n 1. Portanto:
5/ 2
n a a
c c
i =1 propriedade potncia : = c
b
2 b

n5/ 2
=1 propriedade potncia :a =a
b c bc

2i 5/ 2
n5/ 2=2i 5/ 2 propriedade potncia : a b c =a b c
n5/ 2=25 / 2i aplica log em ambos os lados

log 2 n5/ 2 =log 2 25 /2 i


5/2 5/ 2
b c
propriedades log : log a a =b def. de log ; log a b =c log a b

5 log c b
log 2 n=i 5/2 propriedade log :log a b= mudana de base
2 log c a

5 log 2 n
i= propriedade log : log a a b=b def. de log
2 log 2 25 /2
5 log 2 n b c
i= a / =a
2 5 c b

2
52
i= log 2 n
25
i=log 2 n

A partir dessa deduo, pode-se dizer que a rvore vai do nvel 0 at o nvel log 2 n , e portanto,
possui log 2 n1 nveis. Esse valor envontrado corresponde altura da rvore.

2.6 Qual o nmero de ns no ltimo nvel? Qual o custo do ltimo


nvel?

No ltimo nvel, sabe-se que i=log 2 n . Portanto, fica fcil deduzir que a rvore ter, no ltimo
2

nvel, 4 log n = 22 log n=22 log n =2 log n =n 2 ns.


2 2 2 2

Analogamente ao item 2.4, o custo do ltimo nvel dado pelo nmero de ns no ltimo nvel vezes
o custo por n nesse nvel:
5/2 5/2
log 2 n n 2 n 2
4 log n
=n 5/2
=n
2 2
n

O resultado encontrado est de acordo com a suposio, de que o custo de cada n no ltimo nvel
igual a 1.

3
2.7 Qual o custo total da rvore?
O custo da rvore a soma dos custos dos nveis, para todos os nveis, ou seja:

log2 n

[n 5/ 2 1/ 2 ]
i
T n = n e i so independentes
i=0
log 2 n

1/ 2
5 /2 i
T n = n 1 / 21,a srie geomtrica
i=0
log2 n1 log 2 n
1/ 2 1 5 /2 1 / 21 / 2 1 2 1/ 2
log n
n [1/ 2 2
5 /2 5/ 2
T n = n [ ] = n [ ] = 2
1]
1/ 21 1 2/2 1 2
2 2 1 2 n 5/ 2
T n = n5/ 2 [1/ 2 n1 / 21] = n 5/ 2 [1/ 2 n1 / 21] = [1/ 2n1/ 21]
1 2 1 2 1 21

2 n5 /2 2 n5/ 2 n1 /2
T n = Lema 1
21 2 2

2 n5 /2 2 n 5/ 2 n1/ 2 2 n5 /2 2
T n = = Cn5 /2 = O n5 /2 O n2 n , com C=
21 2 2 21 21

Lema 1:
2 n5 / 2 n1/ 2
? 2 2
0 ?
2 2 2 2 n2
0n 2= n , pois 2 22 20
2 2 2 2

Pela rvore de recurso, intui-se ento que:

T n=O n
2
n

3 Prova pelo mtodo da substituio:

Hiptese:
T n/2 = O n /2
2
n/2 T n/ 2 = C n/25 /2

Passo:
C n5 /2 C
T n = 4T n/2n2 n C n /25/ 2n 5/ 2 = n5/ 2 = [ 1]n5 /2
25 /2
4 2
T n = On 5/ 2 = O n 2 n

4
C
Se for considerado que C ' = 1 , ento T nC ' n 5/ 2 e, portanto, T n = O n 2 n
4 2
Base:
Supe-se que quando n=1 , a complexidade seja somente a complexidade de n 2 n , ou
seja, T 1 = 12 1 = 1 . Nesse caso, para n=1, tem-se que:
T 1 = 1C 1 2 1 = C 1 = C

A concluso da prova indutiva pelo mtodo da substituio de que:

2
nn0 c= n0 =1T nc n2 n
21

T n=On 2 n

4 Prova pelo teorema mestre:

Para relembrar, a recorrncia cuja complexidade se quer provar a seguinte:


T n=4T n/ 2n2 n

Pelo teorema mestre, deve-se buscar uma equao no seguinte formato:


T n=aT n/b f n

Portanto, pode-se constatar facilmente que:


a=4
b=2
f n=n2 n
log b a=log 2 4=2

Item 1: tenta-se encontrar uma cota limitante para f(n):


1 1
2 log2 4
logb a
f n =n 2 n=n 5/ 2=n 2
=n 2
c n
1
, com c=1 c0 , =
log b a
Portanto, f n= n 0
2

Item 2: Precisa-se demonstrar a relao de f(n) e f(n/b), pois foi encontrada uma cota inferior no
item 1.
n n 5 / 2 4 n 5/ 2 1 5 / 2 1 2
a f =4 = = n = n nc f n
b 2 4 2 2 2
1 n
Portanto, para o valor de c= c1 , verdade que a f c f n
2 b

Concluso: Por fim, pelo item 3 do teorema mestre, pode-se concluir que

T n=n 2 n

Вам также может понравиться