Dans le passé, le livre sur les recettes numériques était considéré comme la référence de référence pour les algorithmes numériques. La première édition de Fortran a été suivie par des éditions en C et C ++ et autres, la rendant alors plus à jour. Grâce à ceux-ci, il a fourni le code de référence pour les algorithmes de pointe de la journée.
Les éditions plus anciennes sont disponibles en ligne gratuitement de nos jours.
Malheureusement, je pense qu'il n'est désormais plus utile que comme ouvrage historique. Les pratiques de "génie logiciel" me semblent obsolètes et le contenu réel n'a pas suivi le rythme de la littérature.
Quelles sont les références aussi complètes mais accessibles que le programmeur moderne devrait plutôt considérer?
books
algorithms
resources
Stewart
la source
la source
Réponses:
En termes de recettes numériques, nous avons besoin de deux choses - la compréhension de la façon dont les algorithmes se traduisent en implémentation de programmation et deuxièmement, une implémentation de référence qui enregistre les choses.
Il ne semble PAS y avoir de combinaison de logiciel BOOK + Reference. Cependant, il existe de bons logiciels de référence et certains d'entre eux font référence à des articles sur la base de tels algorithmes.
Voici une liste de bibliothèques de référence (principalement open source) qui pourraient vous aider:
D'autres choses spécifiques sont
Vous pouvez également consulter " Analyse des données avec des outils Open Source ".
Voici une énorme liste de comparaison, même si je n'ai pas tout vérifié.
http://www.netlib.org/utk/people/JackDongarra/la-sw.html
la source
Recettes numériques est toujours, l'OMI, un livre utile. Il décrit très bien les algorithmes, y compris leur dérivation, les situations dans lesquelles ils sont utiles et les alternatives à considérer lorsqu'ils ne le sont pas. J'utilise le livre depuis des années.
Une chose que je n'ai jamais utilisée est leur code. J'écris toujours ma propre implémentation basée sur les algorithmes qu'ils décrivent. À cet égard, la qualité de leur code n'a pas d'importance (et il est en effet discutable: dans le livre C de 2e édition, ils définissent une collection de fonctions et de macros pour faire des tableaux indexés unitaire parce que les auteurs sont issus de Fortran). À titre d'exemple: j'ai dû implémenter FFT dans Objective-C, j'ai donc utilisé NR dans Fortran pour comprendre ce que FFT faisait et à quoi devrait ressembler le code.
Pensez à NR de la même manière que vous pensez à Knuth: vous ne colleriez jamais le code de ce livre dans votre projet.
la source
Personnellement j'aime ça, c'est à peu près le niveau que je peux comprendre
Le code est Fortran traduit en «C» mais c'est OK, vous pouvez simplement le traduire de nouveau en Fortran puis en C ++ vous-même! Il y a des avantages aux versions Fortran ou C dans la mesure où le code est à peu près autonome, vous n'avez pas à faire glisser un tas de classes C ++ pour faire des matrices, complexes, etc. - surtout compte tenu de la qualité de leur codage!
Il y a une objection justifiable aux réclamations ridicules de copyright par les auteurs et je connais un certain nombre de conférenciers qui interdisent NR dans leurs classes. Parmi les experts numériques, les livres ont également la réputation d'être "suffisamment d'informations pour vous causer des ennuis". Mais leur seule suggestion est généralement d'utiliser leur code personnel ou d'acheter NAG.
Une collection suggérée de bibliothèques numériques alternatives de haute qualité est disponible sur http://www.netlib.org/
la source