Qué Tipo De Dato Es La De Ord
Enviado por EEPF2010 • 4 de Diciembre de 2012 • 469 Palabras (2 Páginas) • 299 Visitas
Módulo: Preludio
Clase: Ord
Instancias: Char , Double , Float , Int , Integer
clase ( Eq a) => Ord a donde
comparar :: a -> a -> Pedidos
( < ), ( <= ), ( > = ), ( > ) :: a -> a -> Bool
max , min :: a -> a -> a
- Definición completa mínima:
- (<=) O comparar
- Uso de comparar puede ser más eficiente para tipos complejos.
comparar xy
| X == y = EQ
| X <= y = LT
| Si no = GT
x <= y = xy comparar / GT =
x <y = xy == comparar LT
x> = y = xy comparar / LT =
x> y = xy == comparar GT
- Nota que (xy min, max xy) = (x, y) o (y, x)
max xy
| X> = y = x
| Si no = y
min xy
| X <y = x
| Si no = y
ejemplo Ord Char donde
c <= c '= fromEnum c <= fromEnum c '
¿Porque es mas rápido el algoritmo de Hoare que el de Inserción en términos de función?
los algoritmos recursivos son en general más lentos que los iterativos, y consumen más recursos
• Eliges un elemento de la lista. Puede ser cualquiera (en Optimizando veremos una forma más efectiva). Lo llamaremos elemento de división.
• Buscas la posición que le corresponde en la lista ordenada (explicado más abajo).
• Acomodas los elementos de la lista a cada lado del elemento de división, de manera que a un lado queden todos los menores que él y al otro los mayores (explicado más abajo también). En este momento el elemento de división separa la lista en dos sublistas (de ahí su nombre).
• Realizas esto de forma recursiva para cada sublista mientras éstas tengan un largo mayor que 1. Una vez terminado este proceso todos los elementos estarán ordenados.
¿Para qué sirve una estructura de árbol?
Nos ayuda para el ordenamiento y nos permiten ser mas rápidos en las bases a sus jerarquías.
Bibliografias
http://c.conclase.net/orden/?cap=quicksort
http://zvon.org/other/haskell/Outputprelude/Ord_c.html
http://www.olimpiadadeinformatica.org.mx/archivos/apuntes/EstructurasDatos.pdf
...