1 / 9

Análisis de Algoritmos (cont.)

Análisis de Algoritmos (cont.). Agustín J. González ELO320 1º sem 2002. Estrategia: Dividir y Conquistar. Muchos algoritmos naturalmente tienen una estructura recursiva. Su estructura general es: Dividir el problema en un número de subproblemas

Download Presentation

Análisis de Algoritmos (cont.)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Análisis de Algoritmos (cont.) Agustín J. González ELO320 1º sem 2002 ELO320

  2. Estrategia: Dividir y Conquistar • Muchos algoritmos naturalmente tienen una estructura recursiva. Su estructura general es: • Dividir el problema en un número de subproblemas • Conquistar el problema resolviéndolo recursivamente. Si el problema es pequeño se resuelve en forma directa. • Combinar las soluciones de los subproblemas. • Ejemplo: merge-sort : ordenar n elementos • Pasos: • Dividir la secuencia de n elementos en dos subsecuencias de tamaño n/2 • Ordenar las subsecuencias recursivamente usando merge-sort • Combinar las soluciones parciales. ELO320

  3. Algoritmo Merge-sort • Sea A un arreglo de n elementos y p, r índices del rango a ordenar. • Merge-Sort(A, p, r)if ( p < r ) { q = parteEntera((p+r)/2); Merge-Sort(A, p, q); Merge-Sort(A, q+1,r); Merge(A, p, q, r);} ELO320

  4. Algoritmo Merge-sort • Sea A un arreglo de n elementos y p, r índices del rango a ordenar. • Merge-Sort(A, p, r)if ( p < r ) { q = parteEntera((p+r)/2); Merge-Sort(A, p, q); Merge-Sort(A, q+1,r); Merge(A, p, q, r);} --> T(n) --> (1) --> (1) --> T(n/2) --> T(n/2) --> (n) ¿Cuál es el costo de este algoritmo? ELO320

  5. Costo Merge-Sort • ¿Cómo se resuelve esta recurrencia? ELO320

  6. Teorema Maestro (Master Theorem) • Sea a1 y b 1 constantes, sea f(n) una función y seaT(n)=aT(n/b) +f(n)donde n/b es n/b o n/b. Entonces T(n) puede ser acotada asintóticamente por ELO320

  7. 1 Uso del teorema maestro ELO320

  8. 2 Uso del teorema maestro ELO320

  9. 3 Uso del teorema maestro ELO320

More Related