Кульминация 20 лет, это учебник по алгоритмам с открытым исходным кодом.

алгоритм

Организовано Heart of the Machine, участвовали: Сыюань, Сяокунь.

В слове алгоритм есть магия, кажется, что любую рабочую задачу можно автоматизировать, добавив его, и любое волшебное новое открытие невозможно отделить от помощи алгоритмов. Так что же такое алгоритм и как его изучить? В этой книге с открытым исходным кодом «Алгоритмы» автор неоднократно использовал и пересматривал на основе 20-летнего опыта преподавания алгоритмов и завершил окончательную версию перед публикацией несколько дней назад.

"Алгоритмы" основаны на сборнике конспектов лекций, написанных Джеффом Эриксоном, профессором компьютерных наук Иллинойского университета в Урбане-Шампейне, для различных курсов по алгоритмам.Этот учебник издается в Иллинойском университете в Урбане-Шампейне с января. 1999. Джефф Эриксон Эриксон использует эту книгу для преподавания алгоритмического курса раз в год. Джефф Эриксон значительно пересмотрел конспект лекций в 2016 году в результате изменений в курсе теории бакалавриата; эта книга является частью пересмотра профессором Эриксоном самого основного материала курса, чтобы в первую очередь отразить алгоритмическое содержание нового вводного курса теории.

Домашняя страница книги с открытым исходным кодом:Джефф Э. В это время Иллинойс Квота/обучение/Али…

Курс алгоритмов, преподаваемый профессором Эриксоном в Иллинойсе, имеет две важные предпосылки: курс дискретной математики и курс основных структур данных. Поэтому этот учебник может не подойти большинству студентов в качестве первого курса по структурам данных и алгоритмам. В частности, профессор Эриксон предполагает знакомство как минимум со следующими конкретными темами: дискретная математика, методы доказательства, концепции итеративного программирования, основные абстрактные типы данных, основные структуры данных, основные алгоритмы, анализ основных алгоритмов, зрелость математической компетентности.

Дополнительная информация об этой книге:

  • Профессор Эриксон намерен в ближайшем будущем самостоятельно напечатать книгу, но не беспокойтесь, после публикации ресурс останется бесплатным.

  • Профессор Эриксон уже много лет ведет проект на GitHub, посвященный отслеживанию ошибок для этой книги.

  • Профессор Эриксон ясно дает понять, что любой желающий может загрузить электронную или бумажную копию и что разрешено использование, воспроизведение и/или распространение любого контента на этой странице.

  • Книга основана на двух курсах: CS 374 (весна 2018 г.) и CS 473 (весна 2017 г.), и Эриксон также предоставляет курсовые работы и тесты на другой странице.

Скачать книгу

Профессор Эриксон предоставил нам два метода загрузки: одностраничную и двухстраничную версию. Одностраничная версия удобна для просмотра на компьютере, а двухстраничная версия удобна для печати бумажных книг, совести~

Помимо загрузки книг, Джефф также предоставляет множество учебных материалов, в том числе PPT для CS374, темы CS 473, не затронутые в этой книге, и некоторые учебные материалы для формальных языков. Некоторые из этих ресурсов содержат уникальную информацию, но примечания по-прежнему не так совершенны, как учебники, и читатели могут найти эти дополнительные ресурсы курса на домашней странице учебника.

алгоритм

Теперь, когда мы все готовы войти в эту яму, каково конкретное определение алгоритма? Чем он отличается от алгоритмов машинного обучения, с которыми мы знакомы? В первой главе книги Джефф Эриксон дал конкретное определение и происхождение алгоритма, теперь давайте перейдем к слову «алгоритм».

Алгоритм представляет собой набор недвусмысленных, точных, однозначных и механически выполняемых последовательностей основных элементов инструкций, обычно предназначенных для выполнения конкретной целевой задачи. Инструкция описывает вычисление, которое при запуске может начинаться с начального состояния и начального ввода (возможно, пустого), проходить через конечный и четко определенный ряд состояний, в конечном итоге производить вывод и останавливаться в конечном состоянии.

Например, следующий псевдокод определяет «алгоритм» пения «99 бутылок пива на стене», мы просто установили n равным 99, и он точно такой же, как и в оригинале. Это набор точных и недвусмысленных элементов инструкции: присвоить каждый раз целое число i от n до 1, ввести i в текст песни и спеть его, а в конце спеть еще две строчки.

Слово «алгоритм» в конечном итоге превратилось из «алгоритм» в современный «алгоритм», который в основном произошел от народной этимологии греческой арифметики (арифмос). Поэтому до недавнего времени термин «алгоритм» использовался исключительно для обозначения методов механических вычислений, в которых для вычисления битовых значений используются арабские цифры. Человека, обученного выполнять эти процедуры быстро и надежно, можно назвать арифметиком или оператором ЭВМ. Конечно, вы также можете назвать это компьютером и проще.

Поэтому для машинного обучения термин «алгоритм» очень широк, поскольку это детерминированный вычислительный процесс для конкретной задачи, мы можем назвать его алгоритмом. Давайте подробно рассмотрим темы и содержание «алгоритмов» в этой книге:

Джефф Эриксон — профессор компьютерных наук в Университете Иллинойса в Урбана-Шампейн, занимающийся исследованиями в области алгоритмов, структур данных итопологияОн получил премию Национального научного фонда за карьеру и Высшую награду за преподавание в бакалавриате.


Источник:jeffe.cs.illinois.edu/(Домашняя страница Джеффа Эриксона)

Переиздание книги стало хитом на ycombinator: за 14 часов было получено более 180 комментариев.

Пользователь сети примитивный suave сказал:

Джефф Эриксон был моим профессором алгоритмов в 2012 году. Он является воплощением красноречивого, страстного педагога, которого я когда-либо встречал. Я много раз читал эти заметки, чтобы подготовиться к довольно сложному экзамену. По секрету расскажу вам анекдот, распространенный среди одноклассников в его классе: На 25% тестовых вопросов, если вы напишете «Я не знаю», вы будете вознаграждены за признание своих недостатков, и это убережет профессора от исправления вас. время для плохого ответа.

Нетизен каап сказал:

Он был моим профессором алгоритмов в 1999 году, и мои однокурсники хорошо его приняли. Его объяснение рекурсии идеально (раздел 1.2): «Рекурсивные алгоритмы надеются решить за вас все более простые подзадачи. Вам все равно, какой метод вы используете, просто ешьте дыни».

Справочное содержание:news.com по сравнению с Nat or.com/item?ID=188…