• Nenhum resultado encontrado

Universidade Federal de Alfenas

N/A
N/A
Protected

Academic year: 2021

Share "Universidade Federal de Alfenas"

Copied!
54
0
0

Texto

(1)

Universidade Federal de Alfenas

Projeto e Análise de Algoritmos

Aula 07 – Notações θ, Ω, ω, ο

[email protected]

(2)

Última aula

Notação O

Uma função f(n) domina assintoticamente outra função

g(n)

se existem duas constantes positivas

(3)

Última aula

Notação O

Uma função f(n) domina assintoticamente outra função

g(n) se existem duas constantes positivas

c e n0

tais que, para qualquer

(4)

Última aula

Notação O

Uma função f(n) domina assintoticamente outra função

g(n) se existem duas constantes positivas

c e n0

tais que, para qualquer

n >= n0,

temos

(5)

Outras notações

Assim como

a notação O fornece uma maneira

assintótica de dizer que uma função é “menor ou igual

a”outra

, existem outras notação que fornecem outras

conclusões sobre a complexidade de algoritmos;

(6)

Outras notações

Assim como

a notação O fornece uma maneira

assintótica de dizer que uma função é “menor ou igual

a”outra

, existem outras notação que fornecem outras

conclusões sobre a complexidade de algoritmos;

(7)

Outras notações

Assim como

a notação O fornece uma maneira

assintótica de dizer que uma função é “menor ou igual

a”outra

, existem outras notação que fornecem outras

conclusões sobre a complexidade de algoritmos;

Θ

Ω

(8)

Outras notações

Assim como

a notação O fornece uma maneira

assintótica de dizer que uma função é “menor ou igual

a”outra

, existem outras notação que fornecem outras

conclusões sobre a complexidade de algoritmos;

Θ

Ω

ω

(9)

Outras notações

Assim como

a notação O fornece uma maneira

assintótica de dizer que uma função é “menor ou igual

a”outra

, existem outras notação que fornecem outras

conclusões sobre a complexidade de algoritmos;

Θ

Ω

ω

ο

(10)
(11)

Notação Ω

A notação Ω é bem parecida com a notação O;

▫ „O‟ define um limite assintótico superior, e;

Ω define um limite assintótico inferior.

(12)

Notação Ω

A notação Ω é bem parecida com a notação O;

▫ „O‟ define um limite assintótico superior, e;

Ω define um limite assintótico inferior.

Exemplos:

4

(

3

)

n

n

(13)

Notação Ω

A notação Ω é bem parecida com a notação O;

▫ „O‟ define um limite assintótico superior, e;

Ω define um limite assintótico inferior.

Exemplos:

4

(

3

)

n

n

)

1

(

n

(14)

Notação Ω

A notação Ω é bem parecida com a notação O;

▫ „O‟ define um limite assintótico superior, e;

Ω define um limite assintótico inferior.

Exemplos:

4

(

3

)

n

n

)

1

(

n

))

(log(

)

log(

3

n

n

(15)

Notação Ω

A notação Ω é bem parecida com a notação O;

▫ „O‟ define um limite assintótico superior, e;

Ω define um limite assintótico inferior.

Exemplos:

4

(

3

)

n

n

)

1

(

n

))

(log(

)

log(

3

n

n

)

1

(

1

(16)

Notação Ω

A notação Ω é bem parecida com a notação O;

▫ „O‟ define um limite assintótico superior, e;

Ω define um limite assintótico inferior.

Exemplos:

4

(

3

)

n

n

)

1

(

n

))

(log(

)

log(

3

n

n

)

1

(

1

)

2

(

!

n

n

(17)

Notação Ω

}

n

n

f(n)

g(n)

c

|

n

e

c

{f(n):

(g(n))

0 0

0

0

(18)

Notação Ω

(19)

Notação Ω

Na prática a notação Ω não é vista sozinha em análises

de algoritmos;

(20)

Notação Ω

Na prática a notação Ω não é vista sozinha em análises

de algoritmos;

(21)

Notação Ω

Na prática a notação Ω não é vista sozinha em análises

de algoritmos;

▫ Pelo motivo de não interessar para a análise de algoritmos;

▫ A notação O possui sua importância, pois o programador conclui que seu algoritmo é no máximo tão complexo a uma função.

(22)

Notação Ω

Na prática a notação Ω não é vista sozinha em análises

de algoritmos;

▫ Pelo motivo de não interessar para a análise de algoritmos;

▫ A notação O possui sua importância, pois o programador conclui que seu algoritmo é no máximo tão complexo a uma função.

▫ Mas no mínimo tão complexo, como a notação Ω descreve, não é importante para conclusões práticas sobre algoritmos.

(23)

Notação Ω

Na prática a notação Ω não é vista sozinha em análises

de algoritmos;

▫ Pelo motivo de não interessar para a análise de algoritmos;

▫ A notação O possui sua importância, pois o programador conclui que seu algoritmo é no máximo tão complexo a uma função.

▫ Mas no mínimo tão complexo, como a notação Ω descreve, não é importante para conclusões práticas sobre algoritmos.

Ω vem na maioria das vezes acompanhada a notação Θ;

(24)
(25)

• Conhecida também como “limite firme” ou “limite assintoticamente restrito”.

(26)

• Conhecida também como “limite firme” ou “limite assintoticamente restrito”.

• A notação O, apesar de fornecer informações sobre a complexidade do algoritmo, nem sempre nos revela algo importante;

(27)

• Conhecida também como “limite firme” ou “limite assintoticamente restrito”.

• A notação O, apesar de fornecer informações sobre a complexidade do algoritmo, nem sempre nos revela algo importante;

• Não faz sentido, para algum algoritmo, dizer que suas complexidade é por exemplo O(n!).

▫ Ou faz?

(28)

• Conhecida também como “limite firme” ou “limite assintoticamente restrito”.

• A notação O, apesar de fornecer informações sobre a complexidade do algoritmo, nem sempre nos revela algo importante;

• Não faz sentido, para algum algoritmo, dizer que suas complexidade é por exemplo O(n!). Ou faz?

• Exemplos da falta de precisão de O:

Notação θ

)

!

(

)

2

(

)

(

)

(

)

(

)

(

1000 5 4 3

n

O

n

O

n

n

O

n

n

O

n

n

O

n

n

O

n

n

(29)

Notação θ

• Uma função f(n) pertence ao conjunto θ(g(n)) se existem constantes positivas n0, c1 e c2

(30)

Notação θ

}

n

n

g(n)

c

f(n)

g(n)

c

|

n

e

,c

c

{f(n):

Θ(g(n))

0 2 1 0 2 1

0

0

• Uma função f(n) pertence ao conjunto θ(g(n)) se existem

constantes positivas n0, c1 e c2 tais que ela possa ser “imprensada” entre

c1.g(n) e c2.g(n),

para um valor de n suficientemente grande.

(31)

• Exemplo:

• Para isso, devemos definir constantes c1, c2 e n0 tais que:

• Encontre constantes que satisfaça as duas desigualdades...

Notação θ

)

Θ(n

n

n

2 2

3

2

2 2 2 2 1

3

2

1

n

c

n

n

n

c

}

n

n

g(n)

c

f(n)

g(n)

c

|

n

e

,c

c

{f(n):

Θ(g(n))

0 2 1 0 2 1

0

0

(32)

• Exemplo de constantes:

Notação θ

2 1

3

2

1

c

n

c

2 2 2 2 1

3

2

1

n

c

n

n

n

c

Dividindo por n2 ...

(33)

• Exemplo de constantes:

• Portanto, se existem tais constantes

Notação θ

7

2

1

14

1

0 2 1

n

c

c

)

Θ(n

n

n

2 2

3

2

2 1

3

2

1

c

n

c

2 2 2 2 1

3

2

1

n

c

n

n

n

c

Dividindo por n2 ...

(34)

Notação θ

))

(

(

)

(

))

(

(

)

(

)

(

)

(

x

g

x

f

e

x

g

O

x

f

sse

)

x

Θ(g

x

f

• Observação:

(35)
(36)

• O limite assintótico superior fornecido pela notação O (ó-zão) pode:

(37)

• O limite assintótico superior fornecido pela notação O (ó-zão) pode:

▫ Ser assintoticamente restrito;

(38)

• O limite assintótico superior fornecido pela notação O (ó-zão) pode:

▫ Ser assintoticamente restrito;

▫ Não ser assintoticamente restrito;

(39)

• O limite assintótico superior fornecido pela notação O (ó-zão) pode:

▫ Ser assintoticamente restrito;

▫ Não ser assintoticamente restrito;

• Exemplos:

▫ Assintoticamente restrito:

▫ Não assintoticamente restrito:

Notação ο

)

(

2

n

2

O

n

2

)

(

)

log(

)

(

2

2 n

c

O

n

n

O

n

(40)

Notação ο

• Todas as funções de O (ó-zão) que não definem um limite assintoticamente restrito pertencem a „‟o” (ó-zinho)

(41)

Notação ο

))

(

(

)

(

))

(

(

)

(

))

(

(

)

(

n

g

n

f

entao

n

g

n

f

e

n

g

O

n

f

se

• Todas as funções de O (ó-zão) que não definem um limite assintoticamente restrito pertencem a „‟o” (ó-zinho)

(42)

Notação ο

)

(

)

log(

)

(

2

2

n

n

n

n

))

(

(

)

(

))

(

(

)

(

))

(

(

)

(

n

g

n

f

entao

n

g

n

f

e

n

g

O

n

f

se

• Todas as funções de O (ó-zão) que não definem um limite assintoticamente restrito pertencem a „‟o” (ó-zinho)

(43)

• Comparativo com a notação O;

Notação ο

}

n

n

g(n)

c

n

f

|

n

c

{f(n):

(g(n))

0 0

)

(

0

0

,

0

0

c

constantes

as

todas

para

válido

é

)

(

)

(

0

limite

o

)),

(

(

)

(

0

c

constante

alguma

para

válido

mantém

se

)

(

)

(

0

limite

o

)),

(

(

)

(

n

cg

n

f

n

g

n

f

n

cg

n

f

n

g

O

n

f

Não é <=, é somente <

(44)

Notação ο

0

)

(

)

(

lim

então

Se

 

g

n

n

f

ο(g(n))

f(n)

n • Facilitando o entendimento...

(45)
(46)

• O limite assintótico inferior fornecido pela notação Ω (omega-zão) pode:

▫ Ser assintoticamente restrito;

▫ Não ser assintoticamente restrito;

• Exemplos:

▫ Assintoticamente restrito:

▫ Não assintoticamente restrito:

Notação ω

)

(

2

n

2

n

2

)

(

2

n

3

n

(47)

Notação ω

))

(log(

2

)

1

(

2

2

n

n

n

))

(

(

)

(

))

(

(

)

(

))

(

(

)

(

n

g

n

f

entao

n

g

n

f

e

n

g

O

n

f

se

• Todas as funções de Ω (omegazão) que não definem um limite assintoticamente restrito pertencem a ω

(48)

Notação ω

}

n

n

n

f

g(n)

c

|

n

c

{f(n):

(g(n))

0 0

)

(

0

0

,

0

Não é <=, é somente <

(49)

Notação ω

 

(

)

)

(

lim

então

Se

n

g

n

f

(g(n))

f(n)

n

• Facilitando o entendimento...

(50)
(51)

Exercícios – V ou F

))

(

(

)

(

))

(

(

)

(

n

g

n

sse

g

n

f

n

f

))

(

(

)

(

))

(

(

)

(

n

g

n

entao

f

n

g

n

f

se



(a) (b) (c) (d) (e) (f) (g) (h) (i)

))

(

(

)

(

))

(

(

)

(

n

g

n

entao

f

n

g

n

f

se

))

(

(

)

(

))

(

(

)

(

n

g

n

entao

f

n

g

n

f

se



))

(

(

)

(

))

(

(

)

(

n

O

g

n

entao

f

n

g

n

f

se

))

(

(

)

(

))

(

(

)

(

n

g

n

entao

f

n

g

n

f

se

))

(

(

)

(

))

(

(

)

(

n

g

n

entao

f

n

g

n

f

se

))

(

(

)

(

))

(

(

)

(

n

g

n

entao

f

n

g

n

f

se

))

(

(

)

(

))

(

(

)

(

n

g

n

entao

f

n

g

n

f

se

(52)

Exercício para próxima aula

• Descreva e implemente 3 algoritmos para a seguinte espiral:

• Eles devem ter respectivamente as seguintes complexidades:

▫ Θ(n);

▫ Θ(sqrt(n)); ▫ Θ(1).

(53)

Leitura para próxima aula

Livro: Algoritmos (Cormen)

▫ 4 Recorrências;

 4.1 O método de substituição;

 4.2 O método de árvore de recursão

(54)

Bibliografia

• CORMEN, T. H.; LEISERSON, C. E.; RIVEST, R. L.; (2002).

Algoritmos – Teoria e Prática. Tradução da 2ª edição americana. Rio de Janeiro. Editora Campus.

• TAMASSIA, ROBERTO; GOODRICH, MICHAEL T. (2004). Projeto

Referências

Documentos relacionados

Outro ponto importante referente à inserção dos jovens no mercado de trabalho é a possibilidade de conciliar estudo e trabalho. Os dados demonstram as

Foram analisados a relação peso-comprimento e o fator de condição de Brycon opalinus, em três rios do Parque Estadual da Serra do Mar-Núcleo Santa Virgínia, Estado de São

Os maiores coeficientes da razão área/perímetro são das edificações Kanimbambo (12,75) e Barão do Rio Branco (10,22) ou seja possuem uma maior área por unidade de

35 podendo, ainda, envolver metas quantificadas e contemplar a celebração de contratos (programa ou de gestão), interferindo, ainda, na avaliação do desempenho dos gestores

5) “Estado da arte” do desenvolvimento local sertaginense. “A Sertã continua a ser pequenina e com pouca população. O setor turístico tem vindo a melhorar e temos

Neste estudo foram estipulados os seguintes objec- tivos: (a) identifi car as dimensões do desenvolvimento vocacional (convicção vocacional, cooperação vocacio- nal,

Sem esquecer a Fraude Fiscal, analisemos também um pouco do crime de branqueamento, art. Em crónica publicada no Diário do Minho, em 1 de Dezembro de 2010, Cultura, era

- A fotobiomodulação laser na superfície dentária e na entrada do alvéolo antes do reimplante (G3) favoreceu o processo de reparo tecidual após reimplante dentário em