4 страница19 мая 2019, 23:13

Структура книги

В первых трех главах закладываются основы:

Глава 1 - вы изучите свой первый нетривиальный алгоритм: бинарный поиск. Также здесь рассматриваются основы анализа скорости алгоритмов с применением «О-большое» . Эта запись часто используется в книге для описания относительной быстроты выполнения алгоритмов.

Глава 2 - вы познакомитесь с двумя основополагающими структурами данных: массивами и связанными списками. Эти структуры данных часто встречаются в книге и используются для создания более сложных структур данных, например хеш-таблиц (глава 5). 

Глава З - вы узнаете о рекурсии - удобном приеме, используемом многими алгоритмами (например алгоритмом быстрой сортировки ,о котором рассказано в главе 4).

По моему опыту, темы «О-большое» и рекурсии сложны для новичков,поэтому в этих разделах я снижаю темп изложения и привожу более подробные объяснения. 

В оставшейся части книги представлены алгоритмы, часто применяемые в разных областях. 

Методы решения задач рассматриваются в главах 4, 8 и 9. Если вы столкнулись со сложной задачей и не знаете , как эффективно ее решить,воспользуйтесь стратегией «разделяй и властвуй» (глава 4) или методом динамического программирования (глава 9). А если вы поняли , что эффективного решения не существует, попробуйте получить приближенный ответ с использованием жадного алгоритма (глава 8). 

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

Алгоритмы графов рассматриваются в главах 6 и 7. Графы используются для моделирования сетей: социальных, дорожных, нейронных или любых других совокупностей связей. Поиск в ширину (глава 6) и алгоритм Дейкстры (глава 7) предназначены для поиска кратчайшего расстояния между двумя точками сети: с их помощью можно вычислить кратчайший маршрут к точке назначения или количество промежуточных знакомых у двух людей в социальной сети.

Алгоритм k ближайших соседей рассматривается в главе 10. Это простой алгоритм машинного обучения; с его помощью можно построить рекомендательную систему, механизм оптического распознавания текста,систему прогнозирования курсов акций - словом, всего, что требует прогнозирования значений («Мы думаем, что Адит поставит тому фильму 4 звезды» ) и классификации объектов («Это буква Q» ). 

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



4 страница19 мая 2019, 23:13

Комментарии