
Электронная
399 ₽320 ₽
Это бета-версия LiveLib. Сейчас доступна часть функций, остальные из основной версии будут добавляться постепенно.

Ваша оценкаЖанры
Ваша оценка
После неудачных попыток преодолеть хотя бы сотню страниц книги по алгоритмам, которую все и вся в один голос советуют как лучшее для начинающих ( «Алгоритмы. Построение и анализ» ), где чуть ли не с первых страниц на читателя обрушивается поток математических формул, от которых мозг вскипает и начинают шевелиться волосы, а от самого текста веет тоской и грустью университетских лекций, я решила, что алгоритмы - это тяжело, непонятно и не мое. И что, может быть, когда-нибудь, но точно не в этот раз.
И какое же было мое удивление, когда я открыла эту книгу и... понеслось. Я даже не заметила, как прочитала треть, и мне было интересно двигаться дальше и дальше. Яркие примеры, большое количество картинок и практически отсутствие каких-то сложных формул и математических выкладок - это идеально для понимания и усваивания того, как эти самые алгоритмы работают! А реальные примеры (из жизни или из готовых проектов) показывают, ЗАЧЕМ вообще нужен конкретный алгоритм и решается та или иная задача с его применением. Более того, в книге еще есть множество упражнений (с ответами), на которых можно закрепить пройденный материал и проверить, насколько он реально был усвоен.
Примеры кода даны на Python, и хоть синтаксис выглядит непривычно, но все достаточно понятно и вполне можно переложить на любой другой язык.
В книге рассмотрены:
ЗЫ: ах да! Наконец-то, благодаря этой книге, я поняла, чем стек отличается от очереди :)

Честно говоря, бóльшую часть книги меня преследовало ощущение, что я залезла слегка не в свою область, но чтение всё равно оказалось достаточно увлекательным и полезным (хоть и не таким полезным, как для изучающих бэкенд). А ближе к концу к тому же появились более понятные и обозримые примеры применения: например, какие алгоритмы могут использоваться для подбора рекомендаций пользователя и поисковиков.
Перед автором стояла непростая задача: дать общий обзор на наиболее базовые и применяемые алгоритмы. На мой взгляд, учитывая обширность темы и не очень сильную связь между ними, он структурировал материал настолько хорошо, насколько это было возможно. Постепенно, с узнаванием разных способов решить ту или иную задачу, начинаешь лучше понимать, какой алгоритм в какой ситуации стоит выбрать. Из всего представленного многообразия моими любимчиками однозначно стали "жадные" алгоритмы и "k ближайших соседей" :)
Книга написана довольно увлекательно для заявленной темы и мне по-настоящему понравились иллюстрированные примеры и подбадривания автора - мол, если не удалось понять с первого раза, не стоит расстраиваться, дочитайте главу и скорее всего понимание придет (и это действительно так). Я узнала о множестве вещей, о которых либо не знала ничего, либо почти ничего ("О" большое, хеш-таблицы, графы, бинарный поиск и пр.), лучше поняла принципы работы каких-то знакомых вещей (например, почему именно при бесконечном цикле программа зависает), стала понятнее рекурсия и многое другое.
Хотя мне кажется, что для лучшего понимания не обойтись без конспектов - и в этом загвоздка. Я бы не назвала чтение этой книги отдыхом, это такой же учебный материал, как какие-нибудь курсы, на осмысление которого требуется время и желание. Также, на мой взгляд, пониманию препятствует возможное отсутствие опыта у читателя - если вам (как мне) еще не приходилось решать предлагаемые задачи на практике, то может быть тяжело понять, где это может пригодиться (и, соответственно, будет сложнее запомнить абстрактную информацию).
Подытожить отзыв хочется эпилогом из книги, который неплохо обобщает мои впечатления от нее.

"Грокаем алгоритмы" Адитьи Бхаргавы — это отличное введение в мир алгоритмов и структур данных для тех, кто только начинает погружаться в этот сложный, но увлекательный предмет. Книга написана простым языком и иллюстрирована множеством наглядных схем, что делает её доступной даже для тех, кто не имеет серьезного технического опыта.
Одно из главных достоинств этой книги — её фокус на интуитивном понимании алгоритмов. Автор уделяет особое внимание тому, чтобы объяснить основные концепции так, чтобы они были понятны не только на теоретическом уровне, но и в практическом применении. Это особенно полезно для начинающих программистов или тех, кто хочет лучше понять алгоритмы без глубокого погружения в математические детали.
Структура книги тоже заслуживает внимания. Она разделена на главы, каждая из которых посвящена конкретному алгоритму или структуре данных, включая такие темы, как сортировка, поиск, рекурсия, графы и динамическое программирование. В каждом разделе представлены примеры, которые иллюстрируют, как алгоритмы работают в реальных сценариях, что помогает читателю закрепить теорию на практике.
Еще одним преимуществом является акцент на визуальном представлении информации. Иллюстрации и диаграммы играют ключевую роль в объяснении сложных концепций, делая их более понятными и интересными. Это придает книге дружелюбный вид и облегчает процесс обучения.
Однако книга может показаться поверхностной для более опытных читателей или тех, кто ищет глубокий анализ алгоритмов. Если вы уже знакомы с основными структурами данных и алгоритмами, то, вероятно, вам потребуется более детальная литература для углубленного изучения темы.
В целом, "Грокаем алгоритмы" — это отличное введение в алгоритмы для начинающих, особенно для тех, кто предпочитает визуальный и интуитивный подход к обучению. Книга идеально подходит для самостоятельного изучения или в качестве вспомогательного материала к курсам по программированию и информатике. Ну и конечно, через какое-то время я планирую перечитать ее снова, но уже с новыми знаниями и большим опытом.

Th e Feynman algorithm is named after the famous physicist Richard Feynman, and it works like this:


















Другие издания

