next up previous
Next: Algoritmos de ordenação parcial: Up: Projeto e Análise de Previous: Sort2

Limite Inferior

Ordenações através de comparações podem ser vistas abstratamente em termos de árvores de decisão.Uma arvore de decisão representa as comparações realizadas pelo algoritmo de ordenação quando ele trabalha em uma entrada de um dado tamanho.

O tamanho do caminho mais longo partindo da raíz de uma árvore de decisão para qualquer um de suas folhas representa o pior-caso no número de comparações que um algoritmo de ordenação realiza. Conseqüentemente, o pior-caso no número de comprarações para uma ordenação por comparação corresponde à altura da sua árvore de decisão.

Assim, achar o limite inferior para a altura de uma árvore de decisão equivale a achar o limite inferior para o tempo de execução de qualquer algoritmo de ordenação por comparação.

Considere a arvore de decisão de altua \( h \) que ordena \( n \) elementos. Como existem \( n! \) permutações dos \( n \) elementos, cada permutação representa uma ordem de ordenação distinta, a árvore tem que ter pelo menos \( n! \) folhas. Já que uma árvore binária de altura \( h \) tem não maus do que \( 2^{h} \) folhas, temos:


\begin{displaymath}
n!\leq 2^{h}\end{displaymath}

que, através do uso de logaritmos, fica


\begin{displaymath}
h\geq \lg \left( n!\right) \end{displaymath}

, já que a função é monotonicamente crescente. Usand as aproximação de Stirling, temos:


\begin{displaymath}
n!\geq \left( \frac{n}{e}\right) ^{n}\end{displaymath}

onde \( e \) é a base dos logaritmos naturais; assim:

\begin{eqnarray*}
h & \geq & \lg \left( \frac{n}{e}\right) ^{n}\\
& = & n\lg n-n\lg e\\
& = & \Omega \left( n\lg \right)
\end{eqnarray*}



-

[2,1]


next up previous
Next: Algoritmos de ordenação parcial: Up: Projeto e Análise de Previous: Sort2
Tiago Macambira 2003-05-23