Algorithms

I’m writting this in spanish.

Algoritmos:

Los algoritmos son distintas formas de usar los patrones de diseño y las estructuras de datos para conseguir hacer cosas de la forma más óptima posible.

Notación O

Es la forma de decir lo rápido que funcionará el algoritmo. Un numero mayor significa que va más lento que un numero más pequeño.

O(log n) << O(n) << O (n^log n) << O (n^n)

O (log n) se logra cuando por ejemplo, tienes que recorrerte una lista para poder hacer algo y puedes hacerlo sin tener que recorrerte toda la lista. Recorrerse la lista entera es O(n). Cuando se tiene que recorrer toda la lista y volver a visitar algunos numeros pero no la lista entera, entonces es O(n ^ log n), y si por cada elemento de la lista se tiene que volver a visitar toda la lista por ejemplo para buscar si un numero es mayor o menor, entonces se dice que es O(n^n).

Es importante intentar usar el más bajo. Ordenar una lista de por ejemplo 1.000 elementos usando un algoritmo O(n^n) puede tardar horas mientras que uno O(log n) puede tardar segundos.

Recursividad

Lo hemos visto por encima al ver las funciones de pilas y colas.

Algoritmos de Busqueda

Algoritmos de Orden

 

Leave a Reply