McGraw Hill-Luis Joyanes Aguilar-Fundamentos de Programacion Libro de Problemas
Radix Sort - ic-itcr.ac.cric-itcr.ac.cr/~ausanabria/files/2016IIScursos/datos/presentaciones/... ·...
Transcript of Radix Sort - ic-itcr.ac.cric-itcr.ac.cr/~ausanabria/files/2016IIScursos/datos/presentaciones/... ·...
4
Descripción
● Se puede considerar una versión aumentada del ordenamiento por urnas (binsort).
● Realiza un ordenamiento no-comparativo.● Descompone el elemento, esto puede
realizarze de dos formas:– Top-down (→MSD), : Solución recursiva.
– Bottom-up (←LSD), : Mucho más común.
5
Algoritmo
● Consiste en:
1.Separar los elementos a ordenar en urnas etiquetadas.
2.Cada urna tiene elementos con el mismo dígito en la misma posición.
3.Los elementos en estas urnas se unen en orden ascendente.
4.Se reparte de nuevo en las urnas según el siguiente dígito más significativo.
5.Termina cuando ya se llegó al dígito más significativo.
15
RendimientoAlgoritmo Peor caso Mejor caso
Burbuja O(n2) O(n)
Inserción O(n2) O(n)
Merge Sort O(n log(n) ) O(n log(n) )
Quick Sort O(n2) O(n log(n) )
Radix Sort O(kn) O(n)
Heap Sort O(n2) O(n log(n) )
● Si los elemento a ordenar tienen largo (k) pequeño el rendimiento es muy bueno.
● Mientras más grande el largo de los elementos a ordenar, peor es el rendimiento.
16
Otros recursos
● Explicación del radix sort (Inglés):– http://www.youtube.com/watch?v=dHeTp6hO71U
● Vizualization of the radix sort:– http://www.youtube.com/watch?v=LyRWppObda4
– http://wiki.algoviz.org/search/node/radix%20sort
17
Bibliografía
● Joyanes, Luis. and Zahonero, Ignacio. Estructura de datos: algoritmos, abstracción y objetos. McGraw-Hill Interamericana de España, 1998.
● Leiserson, Charles E., Ronald L. Rivest, and Clifford Stein. Introduction to algorithms. Ed. Thomas H. Cormen. The MIT press, 2009.
● Gonnet GH. A Handbook of Algorithms and Data Structures. Addison-Wesley, Reading, Mass., 1984
4
Descripción
● Se puede considerar una versión aumentada del ordenamiento por urnas (binsort).
● Realiza un ordenamiento no-comparativo.● Descompone el elemento, esto puede
realizarze de dos formas:– Top-down (→MSD), : Solución recursiva.
– Bottom-up (←LSD), : Mucho más común.
5
Algoritmo
● Consiste en:
1.Separar los elementos a ordenar en urnas etiquetadas.
2.Cada urna tiene elementos con el mismo dígito en la misma posición.
3.Los elementos en estas urnas se unen en orden ascendente.
4.Se reparte de nuevo en las urnas según el siguiente dígito más significativo.
5.Termina cuando ya se llegó al dígito más significativo.
15
RendimientoAlgoritmo Peor caso Mejor caso
Burbuja O(n2) O(n)
Inserción O(n2) O(n)
Merge Sort O(n log(n) ) O(n log(n) )
Quick Sort O(n2) O(n log(n) )
Radix Sort O(kn) O(n)
Heap Sort O(n2) O(n log(n) )
● Si los elemento a ordenar tienen largo (k) pequeño el rendimiento es muy bueno.
● Mientras más grande el largo de los elementos a ordenar, peor es el rendimiento.
16
Otros recursos
● Explicación del radix sort (Inglés):– http://www.youtube.com/watch?v=dHeTp6hO71U
● Vizualization of the radix sort:– http://www.youtube.com/watch?v=LyRWppObda4
– http://wiki.algoviz.org/search/node/radix%20sort
17
Bibliografía
● Joyanes, Luis. and Zahonero, Ignacio. Estructura de datos: algoritmos, abstracción y objetos. McGraw-Hill Interamericana de España, 1998.
● Leiserson, Charles E., Ronald L. Rivest, and Clifford Stein. Introduction to algorithms. Ed. Thomas H. Cormen. The MIT press, 2009.
● Gonnet GH. A Handbook of Algorithms and Data Structures. Addison-Wesley, Reading, Mass., 1984