Больше рецензий

Nurmy

Эксперт

по пофигизму (*¯︶¯*)φ__

21 января 2024 г. 22:09

889

4

Циклы могут ускорить работу программы. Рекурсия может ускорить работу программиста. Выбирайте, что важнее в вашей ситуации!

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

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

Книга написана довольно увлекательно для заявленной темы и мне по-настоящему понравились иллюстрированные примеры и подбадривания автора - мол, если не удалось понять с первого раза, не стоит расстраиваться, дочитайте главу и скорее всего понимание придет (и это действительно так). Я узнала о множестве вещей, о которых либо не знала ничего, либо почти ничего ("О" большое, хеш-таблицы, графы, бинарный поиск и пр.), лучше поняла принципы работы каких-то знакомых вещей (например, почему именно при бесконечном цикле программа зависает), стала понятнее рекурсия и многое другое.

Хотя мне кажется, что для лучшего понимания не обойтись без конспектов - и в этом загвоздка. Я бы не назвала чтение этой книги отдыхом, это такой же учебный материал, как какие-нибудь курсы, на осмысление которого требуется время и желание. Также, на мой взгляд, пониманию препятствует возможное отсутствие опыта у читателя - если вам (как мне) еще не приходилось решать предлагаемые задачи на практике, то может быть тяжело понять, где это может пригодиться (и, соответственно, будет сложнее запомнить абстрактную информацию).

Подытожить отзыв хочется эпилогом из книги, который неплохо обобщает мои впечатления от нее.

Надеюсь, этот краткий обзор показал, как много вам еще предстоит узнать. Я считаю, что лучший способ узнать что-то - найти тему, которая вас интересует, и изучить её. Надеюсь, эта книга закладывает достаточно надежную основу для этого.

Собери их всех - 4G “Неограниченный простор” — книги с длинными названиями (от 5 слов, предлоги считаются)