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