Requisito matemático previo para el libro Introducción a los algoritmos (CLRS) [cerrado]

30

Ya tengo conocimiento sobre algoritmos básicos. Ahora planeo estudiar algoritmos más avanzados y decido ir a Introducción a los algoritmos .

No estoy seguro, ¿necesito actualizar mis habilidades matemáticas antes de leer este libro o no? (Olvidé casi las matemáticas que aprendo en la escuela secundaria y en la universidad). Si este libro necesita un buen conocimiento de las matemáticas, sugiera materias que beneficien.

Quiero aprender sobre implementación, diseño y análisis de algoritmos.

Anónimo
fuente
1
Aquí hay un gran recurso para actualizar sus habilidades si lo desea. khanacademy.org
Alan B. Dee

Respuestas:

9

Como @ user16764 alude en referencia a las ofertas particulares de cursos del MIT (6.042) , una versión de lo que normalmente se llama matemática discreta , combinada con el cálculo a nivel de primer año (universidad) son los requisitos principales para comprender muchos algoritmos (básicos) y sus análisis.

Los algoritmos especializados o avanzados pueden requerir antecedentes matemáticos adicionales o avanzados, como en estadística / probabilidad (programación científica y financiera), álgebra abstracta y teoría de números (es decir, para criptografía).

Como estudiante, mi curso de matemáticas discretas tenía el libro de texto Matemáticas discretas con aplicaciones de Susanna Epp, y otro libro de texto que encontré en mi biblioteca fue Matemáticas discretas de Kenneth Ross y Charles Wright. Es probable que una copia usada de buena calidad de uno de estos sea un lugar razonable para comenzar (con o sin combinar con MIT Open Course Ware, dependiendo de su estilo de aprendizaje). Para el autoestudio, a menudo encuentro que tener dos fuentes a las que referir puede ayudar a aclarar puntos que tengo problemas para entender.

Una alternativa que he visto sugerida es Concrete Mathematics , Segunda edición de Ronald L. Graham, Donald E. Knuth y Oren Patashnik. No puedo encontrar mi copia en este momento, y no la he trabajado diligentemente, así que no puedo hacer una recomendación a favor o en contra.

Del prefacio:

Pero, ¿qué es exactamente la matemática concreta? Es una mezcla de matemática continua y discreta. Más concretamente, es la manipulación controlada de fórmulas matemáticas, utilizando una colección de técnicas para resolver problemas.

Tomaré nota de los comentarios cascarrabias de Bill el Lagarto en esta entrada del blog "Los programadores de libros no leen realmente ". Personalmente, todavía encuentro los algoritmos de Robert Sedgewick (ahora 4ª ed.) Menos intimidantes y más accesibles.

En lo que respecta a la parte continua (es decir, números reales ) de las matemáticas, el cálculo de Stewart parece ser un tomo de uso frecuente para dar conferencias a los estudiantes sobre la iluminación que proviene de la diferenciación y la integración.

mctylr
fuente
6

En realidad, no es tanto matemática per se, sino comodidad y fluidez con el formalismo matemático. Aprenda la terminología básica del conjunto y el formalismo correspondiente.

El análisis de algoritmos, especialmente en el contexto de la teoría de la complejidad en la que estudia el problema computacional subyacente (si está tratando de hacer algo más sustancial que la notación "Big-Oh"), requiere una inversión significativa de tiempo en la teoría de gráficos. y álgebra abstracta, todo además de una gran dosis de inteligencia innata.

Bill VB
fuente
1

Creo que está listo para ir a menos que esté preocupado por el "Análisis" de Algoritmos, no solo por su implementación. Ese curso usualmente es un curso de matemáticas UD o CS en la mayoría de los planes de estudios universitarios.

Simplemente entender cómo implementar los algoritmos en ese libro no debería ser un problema

Doug Stanley
fuente
También quiero aprender sobre el análisis de algoritmos. Por favor dame sugerencias. :)
Anónimo
@ Anónimo En ese caso, creo que no hay más remedio que morder la bala. Comencé a enseñarme matemáticas discretas, pero pronto me sentí abrumado y renuncié, probé la salida fácil haciendo libros "populares" sobre estructuras de datos y algoritmos, solo para descubrir que faltaba el verdadero negocio. Ahora estoy reuniendo el coraje para comenzar de nuevo.
ankush981