En la ciencia de datos, los algoritmos y las estructuras de datos conforman la función y el almacenamiento de la recopilación de datos. Si bien la codificación y el conocimiento matemático aplicado son útiles para aprender estas estructuras, en realidad existen muchos libros para principiantes completos. Muchos de los libros se centran en una estructura específica destinada a facilitar el aprendizaje, utilizando ejemplos de trabajo y códigos para respaldar la teoría detrás del tema. Una vez que hayas comprendido los conceptos básicos de la ciencia de datos, los algoritmos de aprendizaje son el siguiente gran paso.
Este artículo discutirá una variedad de libros de algoritmos y estructuras ideales para niveles de habilidad de usuarios principiantes, intermedios y avanzados.
1. “Introduction to Algorithms” de Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest y Clifford Stein
Autores: Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest y Clifford Stein
Sitio web: Amazon
“Introduction to Algorithms” ofrece una exhaustiva descripción general y una guía a los algoritmos en general. Actúa como una referencia enciclopédica para los algoritmos modernos, cubriendo ampliamente de todo, tanto teoría como práctica, en sus más de 1000 páginas.
El libro es muy práctico, presenta problemas con diagramas y pruebas, implementa algoritmos y analiza la teoría detrás de los resultados. "Introduction" asume una familiaridad razonable con las estructuras de datos y matemáticas, pero los lectores ansiosos tendrán mucho con que ocupar su tiempo.
2. “Algorithms Unlocked” de Thomas H. Cormen
Autor: Thomas H. Cormen
Sitio web: Amazon
Thomas Cormen, el autor de “Algorithms Unlocked”, busca eliminar el misterio de la tecnología y desvelar los secretos detrás de su funcionamiento interno. Muchísimas de las cosas que damos por sentado, como las rutas automáticas de GPS o el cifrado de Internet, utilizan algoritmos aplicados para funcionar.
El libro explica cómo las computadoras usan algoritmos para resolver problemas, creando muchas de las tareas tecnológicas que vemos en nuestra vida cotidiana. El libro recorre los detalles más finos de qué son exactamente los algoritmos informáticos y enseña a los lectores a utilizar algoritmos para realizar tareas sencillas, como la búsqueda, la clasificación y la representación gráfica. Es un excelente recurso para cualquier persona interesada en cómo funcionan los algoritmos en el mundo moderno.
3. “The Algorithm Design Manual” de Steven S. Skiena
Autor: Steven S. Skiena
Sitio web: Amazon
“The Algorithm Design Manual” es una introducción para que puedas crear algoritmos por ti mismo desde cero. No solamente cubre la teoría detrás del diseño de algoritmos, sino que también utiliza ejemplos y ejercicios del mundo real para proporcionar puntos de referencia. Skiena introduce el "pseudo código", una manera de facilitar la transición a los diferentes lenguajes de programación utilizados en los algoritmos. El autor cubre una amplia variedad de algoritmos modernos como la teoría gráfica, la geometría computacional y los algoritmos de subprocesos múltiples.
El libro se divide en dos secciones: Técnicas y recursos. La primera parte, Técnicas, instruye al lector sobre cómo diseñar y analizar algoritmos. En Recursos, la segunda parte, al lector se le presenta una gran referencia de recursos con 75 de los problemas algorítmicos más comunes, así como implementaciones en C/C++ y Java para poder consultarlas cuando sea necesario.
4. “Data Structures and Algorithms Made Easy: Data Structures and Algorithmic Puzzles” de Narasimha Karumanchi
Autor: Narasimha Karumanchi
Sitio web: Amazon
Este libro funciona más como una guía para repasar las áreas antes de que pases por una prueba (como entrevistas, exámenes o certificados) y analiza los problemas comunes de los algoritmos y sus soluciones. Cubre los fundamentos de las estructuras de datos y cómo funcionan los algoritmos, además de enseñar a los lectores cómo escribir los suyos.
El material requiere una familiaridad con las matemáticas y el código C/C++ para completar los ejercicios. Con más de 400 páginas y 20 capítulos, este libro es esencialmente un libro de trabajo para resolver problemas algorítmicos.
5. “Grokking Algorithms: An illustrated guide for programmers and other curious people” de Aditya Bhargava
Autor: Aditya Bhargava
Sitio web: Amazon
Éste es un libro fácil de seguir para que los programadores aprendan un poco más sobre los algoritmos y cómo resolver los problemas comunes que podrían enfrentar. El libro cubre algunos de los algoritmos más comunes y prácticos, como los de ordenamiento y búsqueda, y avanza hacia problemas más difíciles relacionados con la compresión de datos y la inteligencia artificial.
Las ilustraciones que acompañan a los algoritmos son excelentes para las personas que aprenden visualmente y las descripciones detalladas explican cada proceso paso a paso. Cada ejemplo incluye ejemplos de código en Python. No está pensado para un principiante, pero puede servir de guía o actualización para aquellos familiarizados con la programación.
6. “Algorithms” de Robert Sedgewick y Kevin Wayne
Autores: Robert Sedgewick y Kevin Wayne
Sitio web: Amazon
Un título simple para un libro no tan simple, "Algorithms" es increíblemente conciso en su nombre y oculta la profundidad de todo lo que cubre. Este exhaustivo libro de texto repasa los algoritmos y las estructuras de datos en un detalle íntimo, lo que lo convierte en un recurso integral para entornos académicos. Incluso incluye un portal en línea con código fuente totalmente en funcionamiento.
El libro cubre varios tipos de datos y cómo ordenarlos y analizarlos, y destaca algoritmos importantes que son útiles para la búsqueda, el ordenamiento y el procesamiento. Para la práctica, un sitio web complementario contiene ejercicios, datos de prueba, visualizaciones y el código Java completo. Debido a que el libro tiene una mentalidad académica y se utiliza en entornos universitarios, actúa como un libro de texto académico para quienes ingresan al tema.
7. “Advanced Data Structures” de Peter Brass
Autor: Peter Brass
Sitio web: Amazon
“Advanced Data Structures” resalta la importancia de las estructuras de datos en los algoritmos y en la optimización de búsquedas. Este libro no es para los débiles de corazón, ya que es un texto de nivel de maestría destinado a lectores avanzados y profesionales de la ciencia de datos, y se adentra en las complejidades del almacenamiento de datos dentro del análisis de datos.
El libro cubre las diferentes estructuras de datos y las variantes en detalle, discutiendo pilas, colas, tablas hash, árboles de búsqueda y más. Incluso incluye estructuras más especializadas como árboles de intervalo. Los capítulos incluyen ejemplos de código de trabajo en C y referencias para respaldar el trabajo. Este es un libro de texto sobre las complejidades del almacenamiento de datos, por lo que puedes esperar un nivel denso de detalle y amplitud.
8. “Automate This: How Algorithms Came To Rule Our World” de Christopher Steiner
Autor: Christopher Steiner
Sitio web: Chris Steiner | Amazon
Esto no es realmente un manual de referencia o introductorio como la mayoría de los libros sobre algoritmos, sino una visión histórica de cómo los algoritmos se han vuelto más y más prominentes en nuestras vidas, y cómo eventualmente automatizan tareas hábiles previamente realizadas manualmente.
Los algoritmos ahora ayudan a conducir autos, a aumentar los medios de entretenimiento y a predecir el comportamiento humano. Este libro es más una revisión y un comentario para colocar el esoterismo de los algoritmos en un contexto cultural accesible.
Declinación de responsabilidades: Tableau no respalda oficialmente ningún producto, u opinión en él, listado en este sitio web y, como tal, esta página no interactúa con ningún programa de enlace de afiliados. Este artículo está destinado exclusivamente para fines educativos y la información anterior sobre productos y publicaciones está disponible para que los lectores puedan tomar decisiones informadas por sí mismos.