Contenido principal
Unidad: Algoritmos
¿Qué son los algoritmos y por qué deberían importarte? Vamos a empezar con una visión general de los algoritmos y después discutir dos juegos en los que podrías usar un algoritmo para resolverlos de una manera más eficiente: el juego de adivinar un número y un juego para encontrar un camino.
Aprende acerca de la búsqueda binaria, una forma de buscar de manera eficiente en un arreglo de elementos al reducir a la mitad el espacio de búsqueda cada vez.
Aprende cómo usar el análisis asintótico para describir la eficiencia de un algoritmo, y como usar la notación asintótica (O grande , Theta grande y Omega grande) para describir con mayor precisión la eficiencia.
Aprende
Practica
Aprende el ordenamiento por selección, un algoritmo sencillo para ordenar un arreglo de valores, y mira por qué no es el algoritmo más eficiente.
Aprende
Aprende el ordenamiento por inserción, otra manera simple pero no muy eficiente de ordenar un arreglo de valores.
Aprende el concepto de recursividad, una técnica usada frecuentemente en algoritmos. Mira cómo usar la recursividad para calcular factoriales y potencias de un número, además para generar arte.
Aprende
Usa la técnica de recursividad para resolver las Torres de Hanoi, un acertijo matemático clásico y, según dicen, uno que enfrentan los monjes en un templo.
Aprende el ordenamiento por mezcla, un algoritmo de ordenamiento más eficiente que depende fuertemente del poder de la recursividad para ordenar y mezclar subarreglos de manera repetida.
Aprende
Aprende el ordenamiento rápido, otro algoritmo de ordenamiento eficiente que usa la recursividad para ordenar rápidamente un arreglo de valores.
Aprende cómo describir grafos, con sus aristas, vértices y pesos, y mira formas distintas de almacenar los datos de un grafo, con listas de aristas, matrices de adyacencia y listas de adyacencia.
Aprende
Practica
Aprende cómo recorrer un grafo usando la búsqueda en anchura para encontrar un nodo particular o para asegurarte de haber visitado todos los nodos, recorriendo una capa a la vez.
Ideas de cómo puedes continuar tu viaje de aprendizaje en algoritmos.