Algoritmos e complexidade Notas de aula - Arquivo Escolar

Algoritmos e complexidade Notas de aula - Arquivo Escolar Algoritmos e complexidade Notas de aula - Arquivo Escolar

arquivoescolar.org
from arquivoescolar.org More from this publisher
13.04.2013 Views

2. Análise de complexidade Novamente, o último passo é o mais difícil de justificar. A mesma partição que aplicamos acima leva a d∈Dn = Pr[d](desemp[QS](dl) + desemp[QS](dr)) 1≤i≤n d∈Di n = 1≤i≤n = 1≤i≤n = 1≤i≤n 1 |D| Pr[d](desemp[QS](dl) + desemp[QS](dr)) (desemp[QS](dl) + desemp[QS](dr)) d∈D i n |D i n| |D| (cm[QS](i − 1) + cm[QS](n − i)) Pr[X = i](cm[QS](i − 1) + cm[QS](n − i)) é o penúltimo passo é correto, porque a média do desempenho sobre as permutações dl e dr é a mesma que sobre as permutações com i − 1 e n − i elementos: toda permutação ocorre com a mesma probabilidade e o mesmo número de vezes (Knuth [43, p. 119] tem mais detalhes). Se denotamos o desempenho com Tn = cm[QS](n), obtemos a recorrência Tn = n + 1≤i≤n Pr[X = i] (Ti−1 + Tn−i) com base Tn = 0 para n ≤ 1. A probabilidade de escolher o i-ésimo elemento como pivô depende da estratégia da escolha. Vamos estudar dois casos. 1. Escolhe o primeiro elemento como pivô. Temos Pr[X = i] = 1/n. Como Pr[X = i] não depende do i a equação acima vira Tn = n − 1 + 2/n 0≤i

Recorrência Tn = n + 2/(n(n − 1)) 1≤i≤n = n + 2/(n(n − 1)) 0≤i

Recorrência<br />

Tn = n + 2/(n(n − 1)) <br />

1≤i≤n<br />

= n + 2/(n(n − 1)) <br />

0≤i

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!