Estructuras de Datos y Algoritmos (EDA)

Un curso sobre Tipos Abstractos de Datos

Archive for the ‘Material’ Category

Lectura avanzada: transformación de algoritmos recursivos en iterativos

without comments

Si bien la lección no está incluida en el programa de la asignatura, dado que en la clase de hoy (grupo de mañanas) ha surgido el tema al comparar la versión recursiva del recorrido en preorden de un árbol binario con la versión iterativa que utiliza una pila auxiliar, se incluye aquí un texto que trata la transformación de algoritmos recursivos en iterativos.


[issuu width=420 height=297 embedBackground=%23000000 backgroundColor=%23222222 documentId=121105155255-44efe93b155e49a6a28f9f29874148d6 name=recursivo_a_iterativo username=javier.campos tag=algoritmos unit=px v=2]

Pdf descargable aquí.

Written by Javier Campos

noviembre 5th, 2012 at 5:03 pm

Posted in Material

Llévate un Binky para tus días de fiesta

without comments

binky

Haz clic en el cuadro negro de arriba para que empiece…

Directamente desde la Universidad de Stanford. Recomendable además leer el documento sobre “punteros y memoria” de la misma Universidad.

Written by Javier Campos

octubre 5th, 2012 at 12:02 pm

Posted in Material

Modificación del quicksort para conseguir coste O(n log n) en el caso peor

without comments

El quicksort, tal y como aparece en los libros, tiene un coste asintótico cuadrático en el caso peor.

No obstante, existe una modificación no trivial del quicksort que sí consigue un coste asintótico O(n logn). Consiste en elegir la mediana como el pivote que se utiliza para la partición del vector en dos trozos, en cada llamada recursiva del quicksort.

El cálculo de la mediana de los n datos de un vector es un caso particular del conocido como problema de selección, consistente en calcular el estadístico de orden k de esos datos (es decir, el dato que ocuparía la posición k en el supuesto en que se ordenasen los datos de menor a mayor). Si n es impar, la mediana sería el estadístico de orden (n+1)/2; si por el contrario n es par, hay dos medianas que son los estadísticos de orden n/2 y n/2 + 1.

Como decía, se conoce un algoritmo de coste asintótico lineal en el caso peor para el problema de selección y, por tanto, para el cálculo de la mediana. Os lo incluyo aquí debajo, extraído del libro Introducion to Algorithms, de Cormen, Leiserson, Rivest y Stein.

selection_is_linear

Written by Javier Campos

diciembre 19th, 2011 at 11:25 am

Posted in Material

A vueltas con los montículos

without comments

Los montículos se utilizan a menudo para mejorar la eficiencia de algoritmos en los que iterativamente se precisa conocer el mínimo (o máximo) de un conjunto cambiante de valores. Ejemplo:

monticulos_y_dijkstra

Detalles: aquí (transparencias 26 a 37).

———

Por supuesto, utilidad de lo anterior: si n es grande.

n 10 100 1000 10000 100000 1000000
n log n 30 600 10000 130000 1600000 19000000
n2 100 10000 1000000 100000000 10000000000 1000000000000

Written by Javier Campos

diciembre 19th, 2011 at 11:18 am

Posted in Material

Soluciones de ejercicios

without comments

Written by Javier Campos

diciembre 19th, 2011 at 11:12 am

Posted in Material

Árboles rojinegros

without comments

Los árboles AVL no son la única forma de conseguir árboles binarios de búsqueda cuya altura sea de orden logarítmico en el número de nodos. Una alternativa bastante conocida son los árboles rojinegros. Se incluyen a continuación unas transparencias explicativas tomadas de una asignatura optativa del plan en extinción y más abajo un enlace a un applet.

El applet que ya conocéis de árboles AVL permite también hacer pruebas con un árbol rojinegro (seleccionando “RB” en el menú de la derecha del applet).

Written by Javier Campos

diciembre 16th, 2011 at 12:45 pm

Posted in Material

Material sobre AVL’s

without comments

En la zona de acceso restringido de esta web (acceso con usuario y clave comunicados en clase) están disponibles algunas páginas de documentación sobre árboles AVL:

Written by Javier Campos

diciembre 13th, 2011 at 3:59 pm

Posted in Material

Mañana martes y el viernes: clases de problemas

without comments

Mañana martes y también el viernes serán clases de problemas. Los enunciados están disponibles aquí.

Written by Javier Campos

diciembre 12th, 2011 at 3:37 pm

Posted in Material

Soluciones de ejercicios

without comments

Written by Javier Campos

diciembre 9th, 2011 at 11:53 am

Posted in Material

Próximos lunes 28 y martes 29: clases de problemas

without comments

Las hojas de ejercicios se pondrán en las páginas de material de los grupos de mañana y tarde.

Written by Javier Campos

noviembre 25th, 2011 at 9:33 am

Posted in Material