Быть подписчиком имеет свои преимущества. Я добавляю свою книгу «Иллюстративное введение в алгоритмы», чтобы мои читатели могли ознакомиться с ней бесплатно.

Эта книга была написана, чтобы заполнить пробел, который возникает, когда студенты компьютерных наук и программисты пытаются изучать и анализировать различные алгоритмы, существующие в настоящее время. Я прошел курс по алгоритмам и был разочарован типом материала, который сейчас доступен. Есть два типа книг, с которыми я постоянно сталкивался:

1). Во-первых, слишком сложная книга. Эта книга, кажется, предназначена для людей, которые уже свободно разбираются в темах и хотят более подробного и математического подхода к алгоритмам.

2). Во-вторых, слишком простая книга. Базовое введение в алгоритмы. Это общий обзор некоторых алгоритмов, и самые сложные алгоритмы не упоминаются. После завершения человек все еще не может показать, как работает алгоритм, когда возникает проблема.

Эта книга предназначена для студентов старших курсов бакалавриата и программистов, которые хотят расширить свой кругозор. Ее можно использовать как дополнительную книгу рядом с комплексной книгой. Читатели получат знания, необходимые для решения тех математически сложных алгоритмических задач, которые были представлены в комплексной книге.

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

Если вам нужна физическая книга, вы можете приобрести ее на Amazon:



Вот книга:

Алгоритм пузырьковой сортировки наглядно объяснен

Визуальное объяснение алгоритма сортировки вставками

Визуальное объяснение алгоритма сортировки слиянием

Алгоритм быстрой сортировки с визуальным объяснением

Создание кучи из массива

Построение Min-Heap из дерева

Построение Min-Heap из массива

Построение Max-Heap из дерева

Построение Max-Heap из массива

Удаление корневого узла из Min-Heap

Визуальное объяснение алгоритма сортировки кучей

Визуальное объяснение алгоритма сортировки выбором

Визуальное объяснение матрицы смежности

Визуальное объяснение списка смежности

Визуальное объяснение списков краев

Алгоритм поиска в глубину (DFS) с визуальным объяснением

Визуальное объяснение топологической сортировки

Алгоритм поиска в ширину (BFS) с визуальным объяснением

Жадные алгоритмы

Минимальные остовные деревья (MST) с визуальным объяснением

Алгоритм Крускала с визуальным объяснением

Наглядное объяснение алгоритма Прима

Обход бинарного дерева: сначала в глубину — наглядное объяснение алгоритма по порядку

Вставка узла в бинарное дерево с визуальным объяснением

Визуальное объяснение удаления листа с дерева

Визуальное объяснение удаления узла с одним дочерним элементом из дерева

Визуальное объяснение удаления узла с двумя дочерними элементами из дерева

Планарные графики с визуальным объяснением

Динамическое программирование: наглядное объяснение самой длинной общей последовательности

Умножение матриц кратчайших путей для всех пар

Умножение матрицы кратчайших путей всех пар Флойда-Уоршалла

Алгоритм Дейкстры: наглядное объяснение кратчайшего пути из одного источника

Алгоритм Беллмана-Форда с визуальным объяснением

Алгоритм Джонсона с визуальным объяснением

Пересечение отрезков по и против часовой стрелки

Визуальное объяснение сканирования Грэма

Ближайшая пара точек на плоскости — разделяй и властвуй

Визуальное объяснение графа Вороного и триангуляции Делоне

Максимально независимый набор с визуальным объяснением

Визуальное объяснение минимального покрытия вершин

Визуальное объяснение максимальной клики

Дино Кайич в настоящее время является руководителем отдела информационных технологий в компаниях LSBio (LifeSpan BioSciences, Inc.), Absolute Antibody, Kerafast, Everest BioTech, Nordic MUbio и Exalpha. Он также является генеральным директором MyAutoSystem. Он имеет более чем десятилетний опыт разработки программного обеспечения. У него есть B.S. в области компьютерных наук и несовершеннолетнего в области биологии. Его опыт включает в себя создание приложений для электронной коммерции на уровне предприятия, разработку программного обеспечения на основе исследований и содействие распространению знаний посредством письма.

Вы можете связаться с ним в LinkedIn, подписаться на него в Instagram, подписаться на его блог или подписаться на его публикацию на Medium.

Прочитайте все истории Дино Каджика (и тысяч других авторов на Medium). Ваш членский взнос напрямую поддерживает Дино Кайича и других писателей, которых вы читаете. Вы также получите полный доступ ко всем историям на Medium.