En el pasado, el libro de Recetas Numéricas se consideraba la referencia estándar de oro para algoritmos numéricos. La primera edición de Fortran fue seguida por ediciones en C y C ++ y otras, lo que la puso más actualizada. A través de estos, proporcionó un código de referencia para los algoritmos más modernos del día.
Las ediciones anteriores están disponibles en línea de forma gratuita hoy en día.
Desafortunadamente, creo que ahora es principalmente útil solo como un tomo histórico. Las prácticas de "ingeniería de software" me parecen anticuadas, y el contenido real no ha seguido el ritmo de la literatura.
¿Qué referencias igualmente completas pero accesibles debería considerar el programador moderno?
books
algorithms
resources
Stewart
fuente
fuente
Respuestas:
En términos de recetas numéricas, necesitamos dos cosas: la comprensión de cómo los algoritmos se traducen en implementación de programación y, en segundo lugar, una implementación de referencia que reserva cosas.
Parece que NO hay combinación de software BOOK + Reference. Sin embargo, hay algunos buenos softwares de referencia y parte de esto proporciona referencias a documentos sobre la base de tales algoritmos.
Aquí hay una lista de algunas bibliotecas de referencia (en su mayoría de código abierto) que podrían ayudar:
Otras cosas específicas son
También puede consultar " Análisis de datos con herramientas de código abierto ".
Aquí hay una gran lista de comparación, aunque no he verificado todo.
http://www.netlib.org/utk/people/JackDongarra/la-sw.html
fuente
Recetas numéricas sigue siendo, en mi opinión, un libro útil. Describe los algoritmos realmente bien, incluida su derivación, las situaciones en las que son útiles y las alternativas a considerar cuando no lo son. He estado usando el libro por años.
Una cosa que nunca he usado es su código. Siempre escribo mi propia implementación basada en los algoritmos que describen. A ese respecto, la calidad de su código no importa (y de hecho es cuestionable: en el libro C de la segunda edición, definen una colección de funciones y macros para hacer que las matrices sean indexadas por unidad porque los autores provienen de un fondo de Fortran). Como ejemplo: una vez tuve que implementar FFT en Objective-C, así que usé NR en Fortran para comprender qué hizo FFT y cómo debería verse el código.
Piense en NR de la misma manera que piensa en Knuth: nunca pegaría el código de ese libro en su proyecto.
fuente
Personalmente me gusta, se trata del nivel que puedo entender
El código es Fortran traducido a 'C', pero está bien, ¡puede traducirlo nuevamente a Fortran y luego a C ++ usted mismo! Las versiones de Fortran o C tienen ventajas porque el código es bastante autónomo, no tiene que arrastrar un montón de clases de C ++ para hacer matrices, complejos, etc., especialmente dada la calidad de su codificación.
Hay una objeción justificable a las absurdas reclamaciones de derechos de autor de los autores y conozco a varios profesores que prohíben NR en sus clases. Entre los expertos numéricos, los libros también tienen la reputación de "suficiente información para meterte en problemas". Pero su única sugerencia es generalmente usar su código personal o comprar NAG.
Una colección sugerida de bibliotecas numéricas alternativas de alta calidad está en http://www.netlib.org/
fuente