50 Algoritmos que Todo Programador Debe Conocer
Ahmad, Imran
La capacidad de utilizar algoritmos para resolver problemas del mundo real es una habilidad imprescindible para cualquier desarrollador o programador. Este libro le ayudará no solo a desarrollar la capacidad de seleccionar y utilizar el mejor algoritmo para cada problema, sino también a entender cómo funciona. Empezará con una introducción a los algoritmos y conocerá varias té...
Sinopsis
La capacidad de utilizar algoritmos para resolver problemas del mundo real es una habilidad imprescindible para cualquier desarrollador o programador. Este libro le ayudará no solo a desarrollar la capacidad de seleccionar y utilizar el mejor algoritmo para cada problema, sino también a entender cómo funciona. Empezará con una introducción a los algoritmos y conocerá varias técnicas para diseñarlos, antes de aprender a implementar diferentes tipos de algoritmos, con la ayuda de ejemplos prácticos. A medida que avance, aprenderá sobre programación lineal y clasificación de páginas y gráficos, y trabajará con algoritmos de aprendizaje automático (Machine Learning) para comprender las matemáticas y la lógica que hay detrás de ellos. Los casos prácticos le mostrarán cómo aplicar estos algoritmos de forma óptima, antes de centrarse en los algoritmos de aprendizaje profundo y aprender sobre los distintos tipos de modelos de aprendizaje profundo (Deep Learning) y su uso práctico. También conocerá los modelos secuenciales modernos y sus variantes, algoritmos, metodologías y arquitecturas que se utilizan para implementar grandes modelos lingüísticos (LLM) como ChatGPT. Por último, tendrá un primer contacto con las técnicas que permiten el procesamiento paralelo, lo que le permitirá utilizar estos algoritmos para tareas de cálculo intensivo. Cuando acabe este libro, se habrá convertido en un experto en la resolución de problemas informáticos del mundo real utilizando para ello una amplia gama de algoritmos. Con este libro aprenderá a: - Diseñar algoritmos para resolver problemas complejos - Identificar las redes neuronales y las técnicas del aprendizaje profundo - Explorar estructuras de datos existentes y algoritmos incluidos en las bibliotecas de Python - Implementar algoritmos de grafos para la detección del fraude mediante el análisis de redes - Profundizar en algoritmos más avanzados para el procesamiento eficaz del lenguaje natural utilizando ejemplos reale
Índice
Índice de Contenidos Prefacio xxix Sección I: Fundamentos y algoritmos básicos 1-24 Capítulo 1: Descripción general de los algoritmos Sección I: Fundamentos y algoritmos básicos 25-53 Capítulo 2: Estructuras de datos utilizadas en algoritmos Sección I: Fundamentos y algoritmos básicos 55-77 Capítulo 3: Algoritmos de ordenación y búsqueda Sección I: Fundamentos y algoritmos básicos 79-107 Capítulo 4: Diseño de algoritmos Sección I: Fundamentos y algoritmos básicos 109-139 Capítulo 5: Algoritmos de grafos Sección II: Algoritmos de aprendizaje automático 141-185 Capítulo 6: Algoritmos de aprendizaje automático no supervisado Sección II: Algoritmos de aprendizaje automático 187-248 Capítulo 7: Algoritmos tradicionales de aprendizaje supervisado Sección II: Algoritmos de aprendizaje automático 249-287 Capítulo 8: Algoritmos de redes neuronales Sección II: Algoritmos de aprendizaje automático 289-309 Capítulo 9: Algoritmos para el procesamiento del lenguaje natural Sección II: Algoritmos de aprendizaje automático 311-343 Capítulo 10: Modelos secuenciales Sección II: Algoritmos de aprendizaje automático 345-369 Capítulo 11: Algoritmos avanzados de modelos secuenciales Sección III: Temas avanzados 371-407 Capítulo 12: Motores de recomendación Sección III: Temas avanzados 409-435 Capítulo 13: Estrategias algorítmicas para el tratamiento de datos Sección III: Temas avanzados 437-456 Capítulo 14: Criptografía Sección III: Temas avanzados 457-474 Capítulo 15: Algoritmos a gran escala
Comentarios
Sé el primero en comentar este libroTambién te puede interesar