• Nenhum resultado encontrado

Análise de Algoritmos

N/A
N/A
Protected

Academic year: 2022

Share "Análise de Algoritmos"

Copied!
8
0
0

Texto

(1)

Análise de Algoritmos

(2)

• Uma equação que descreve uma função em termos de seu valor em entradas menores

▫ Exemplo

▫ cuja solução é

www.nakamura.eti.br/eduardo Análise de Algoritmos 2

  

 

 

1 se

, 2

2

1 se

, ) 1

( T n n n

n n T

n n

n n n

n

T ( )  log    lg

(3)

• A troca de variáveis pode facilitar a avaliação da recorrência

▫ Exemplo

▫ Fazendo temos , obtendo

www.nakamura.eti.br/eduardo Análise de Algoritmos 3

  

 

 

1 se

, log

2

1 se

, ) 1

( T n n n

n n T

n

m  log n  2 m

  

 

 

1 se

, 2

2

1 se

, ) 1

( 2

n m

T n n

T m

(4)

▫ Ainda é difícil, se fizermos , obtemos

▫ Cuja solução sabemos que é

www.nakamura.eti.br/eduardo Análise de Algoritmos 4

  

 

 

1 se

, 2

2

1 se

, ) 1

( 2

n m

T n n

T m

  m

T m

S ( )  2

 

 

 

0 se

, 2

2

0 se

, ) 1

( S m m m

m m S

m m

m m

S ( )  log 

(5)

▫ Como e , temos

▫ Ou seja,

www.nakamura.eti.br/eduardo Análise de Algoritmos 5

  m

T m

S ( )  2

m m

m m

S ( )  log  n

m  log

  n n n

T 2 log n  log log log  log

  n nnn

T  log log log  log

  n Onn  

T  log log log

(6)

• Aplica-se a recursão até chegar ao caso base

• Exemplo #01

www.nakamura.eti.br/eduardo Análise de Algoritmos 6

  

 

 

1 se

, 1 2

1 se

, ) 1

( T n n

n n T

) (log 1

log )

( n n n

T    

(7)

• Exemplo #02

www.nakamura.eti.br/eduardo Análise de Algoritmos 7

  

 

 

1 se

, 1 2

2

1 se

, ) 1

( T n n

n n T

) ( 1

2 )

( n n n

T    

(8)

• Exemplo #03

www.nakamura.eti.br/eduardo Análise de Algoritmos 8

  

 

 

1 se

, 3

2

1 se

, ) 1

( T n n n

n n T

) ( 2

3 )

( n n n log

3

2 n

T    

Referências

Documentos relacionados

• Como o nome sugere, trata-se de uma árvore binária otimizada para buscar seus elementos. • As chaves são sempre armazenadas segundo a

▫ Para cada nó, todos os caminhos do nodo até qualquer folha passa pelo mesmo número de

▫ Se as chaves não são números naturais, então precisamos encontrar uma forma de interpretá-las como

▫ Precisamos inserir a nova chave no nó correto da árvore, sem violar suas propriedades. • Como proceder se o nó

▫ Mapa de estradas: podemos usar algoritmos específicos para determinar o caminho mais curto entre dois pontos. ▫ Redes de computadores: cada terminal é um

(encontrar uma árvore geradora máxima), como você pode usar os algoritmos de Kruskal e Prim (sem alterá-los) para obter uma árvore. • Supondo que todas as arestas de um grafo

▫ Consiste na minimização do custo de travessia de um grafo entre dois nós (ou vértices).. ▫ Custo este dado pela soma dos pesos de cada aresta

n  se isto for verdade para todo o programa diz-se que o seu tempo de execução é constante. n