Книги

«Грокаем алгоритмы»: обзор самой лучшей книги по алгоритмам

Вот мы и добрались до обзора книги, так любимой многими программистами. И не важно, на каком языке вы пишете — вы обязательно о ней слышали. «Грокаем алгоритмы» научит вас алгоритмически мыслить и думать рационально, что очень важно в программировании.

Python изучили, web-фреймворк Django тоже, про машинное обучение вообще молчим… Но это всё практически бесполезно без знания алгоритмов. Стоит учитывать, что при собеседованиях на Junior позиции, независимо от того, на каком языке вы программируете, будут их спрашивать. А если вы middle или senior dev, то и алгоритмы будут посложнее.

Немного об авторе

Адитья Бхаргава — программист из компании Etsy. В свое время даже получил степень магистра математических наук (а, как вы знаете, алгоритмы и математика неразрывно связаны). В данный момент еще и ведет свой блог с картинками на техническую тематику.

Содержание

Пройдемся по оглавлению, чтобы понять, с чем нам придется работать:

  • Глава 1. Знакомство с алгоритмами — здесь вам расскажут, что такое алгоритмы, их сложность и как ее вычислять. Также, вы мимолетно рассмотрите бинарный поиск.
  • Глава 2. Сортировка выбором — вы узнаете, как работает память, что такое массивы и связанные списки. В заключение напишете алгоритм сортировки выбором.
  • Глава 3. Рекурсия — ответом на вопрос «Что такое рекурсия?» будет «Что такое рекурсия?». Что это значит, поймете в этой главе. А еще рассмотрите стек (Последний Пришел — Первый Ушел).
  • Глава 4. Быстрая сортировка — исходя из названия главы, будет написан одноименный алгоритм. Также вы узнаете немного больше о сложности алгоритмов.
  • Глава 5. Хеш-таблицы — будет разобрано всё, что содержит в себе слово «хеш» (функции, таблицы). Вдобавок разберетесь с коллизиями.
  • Глава 6. Поиск в ширину — курс математического моделирования вам в помощь! Вы рассмотрите графы, реализуете алгоритмы на нем. Поиск в ширину тоже напишете, не зря же главу так назвали:)
  • Глава 7. Алгоритм Дейкстры — Продолжите рассматривать графы. Реализуете свой алгоритм Дейкстры.
  • Глава 8. Жадные алгоритмы — когда большая часть теории позади, можно больше времени уделить упражнениям. В этой главе будет больше практики, чем теории.
  • Глава 9. Динамическое программирование — очень важная тема для любого программиста. Вы научитесь разбивать тяжелые задачи на более простые и пройдете через множество упражнений.
  • Глава 10. Алгоритм k ближайших соседей — вы изучите регрессию и даже немножко затронете машинное обучение.
  • Глава 11. Что дальше? — так как тема алгоритмов довольно обширная, уместить все в одной книге попросту невозможно. Но в 11ой главе будут рассмотрены еще 10 алгоритмов или структур данных более высокой сложности, чем то что вы видели ранее.

А в чем суть?

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

Подведем итоги

Книгу можно смело рекомендовать вообще всем. Те, кто уже программируют, смогут легко разобраться с алгоритмами. Те, кто даже не начинал, смогут очень быстро начать. Иллюстрированные примеры помогут быстро вкатиться в тему, а множество упражнений прочно закрепит ваши знания.

Купить книгу

fakeshluck

Recent Posts

Библиотека Pydantic: валидация данных на Python

Pydantic - это мощная библиотека проверки данных и управления настройками для Python, созданная для повышения…

5 дней ago

7 наилучших библиотек визуализации Python на 2024 год

Python предлагает набор библиотек, удовлетворяющих различные потребности в визуализации, будь то академические исследования, бизнес-аналитика или…

1 неделя ago

Как преобразовать строку в байты в Python

В Python для представления данных в двоичной форме можно использовать байты. Из этой статьи вы…

3 недели ago

Что такое Werkzeug?

В этой статье рассказывается о том, что такое Werkzeug и как Flask использует его для…

3 недели ago

Как прибавить дни, месяцы и годы к дате в Python

При работе с датами часто возникает необходимость прибавлять к дате или вычитать из нее различные…

4 недели ago

Социальная аутентификация в приложении на Flask

В этом руководстве мы рассмотрим, как добавить социальную аутентификацию с помощью GitHub и Google в…

2 месяца ago