В прошлом книга « Численные рецепты» считалась золотым стандартом для численных алгоритмов. За самым ранним изданием Fortran последовали выпуски на C и C ++ и другие, что сделало его более современным. Благодаря этому он предоставил справочный код для современных алгоритмов дня.
Старые выпуски доступны онлайн бесплатно в настоящее время.
К сожалению, я думаю, что теперь это в основном полезно только как исторический том. Практики «разработки программного обеспечения» кажутся мне устаревшими, и фактический контент не поспевает за литературой.
На какие же всеобъемлющие, но все же доступные ссылки следует взглянуть современному программисту?
books
algorithms
resources
Стюарт
источник
источник
Ответы:
С точки зрения Числовых Рецептов нам нужны две вещи - понимание того, как алгоритмы преобразуются в программную реализацию, и, во-вторых, эталонная реализация, которая записывает вещи.
Кажется, нет никакой комбинации BOOK + Reference software. Тем не менее, есть несколько хороших эталонных программ, и некоторые из них содержат ссылки на статьи на основе таких алгоритмов.
Вот список некоторых справочных (в основном с открытым исходным кодом) библиотек, которые могут помочь:
Другие конкретные вещи
Вы также можете проверить « Анализ данных с помощью инструментов с открытым исходным кодом ».
Вот огромный список сравнения, хотя я не все проверил.
http://www.netlib.org/utk/people/JackDongarra/la-sw.html
источник
Числовые Рецепты - все еще, IMO, полезная книга. Он очень хорошо описывает алгоритмы, включая их вывод, ситуации, в которых они полезны, и альтернативы, которые следует учитывать, когда их нет. Я использую книгу в течение многих лет.
Я никогда не использовал их код. Я всегда пишу свою собственную реализацию на основе алгоритмов, которые они описывают. В этом отношении качество их кода не имеет значения (и это действительно сомнительно: во 2-м издании книги C они определяют коллекцию функций и макросов, чтобы сделать массивы индексированными единично, поскольку авторы происходят из Фортрана). В качестве примера: мне когда-то приходилось реализовывать FFT в Objective-C, поэтому я использовал NR в Fortran, чтобы понять, что делает FFT и как должен выглядеть код.
Думайте о NR так же, как о Кнуте: вы никогда не вставите код из этой книги в свой проект.
источник
Лично мне это нравится, речь идет об уровне, который я могу понять
Код Fortran переведен на C, но ничего страшного, вы можете просто перевести его обратно на Fortran, а затем на C ++ самостоятельно! Преимущества версий Fortran или C в том, что код в значительной степени самодостаточен, вам не нужно тянуть кучу классов C ++ для создания матриц, сложных и т. Д., Особенно с учетом качества их кодирования!
Есть оправданные возражения против нелепых заявлений авторов об авторском праве, и я знаю ряд лекторов, которые запрещают NR в своих классах. Среди экспертов по численности книги также имеют репутацию «достаточно информации, чтобы доставить вам неприятности». Но их единственное предложение - использовать свой личный код или купить NAG.
Предлагаемая коллекция альтернативных высококачественных числовых библиотек находится по адресу http://www.netlib.org/
источник