Какой материал для изучения алгоритмов вы можете порекомендовать?
Посоветуйте, пожалуйста, годные, на Ваш взгляд, курсы, книги или любые другие материалы для изучения алгоритмов.
Столкнулся с курсами на hexlet и вспоминаю, что на самом то деле сейчас огромное количество похожих ресурсов (курсера, гикбрейнс и т.д.) и найти определенно годны, на мой взгял сейчас довольно трудно.
Вы возможно спросите - зачем? Для самообразования. Недавно решая одну интересную задачку столкнулся с тем - что я не знаю как ее оптимизировать, как умененьшить количество повторений в цикле, уменьшив тем самым время и затрачиваемую память, что мне банально трудно придумать хороший алгоритм решения проблемы обладая заурядными знаниями.
Возможно я просто глупый, но очень надеюсь что это еще не поздно исправить
Лучшее, что вы можете найти по теме:
Томас Х. Кормен, Чарльз И. Лейзерсон, Рональд Л. Ривест, Клиффорд Штайн. Алгоритмы: построение и анализ, 3-е издание
Читать Кнута для ознакомления с алгоритмами - все равно, что вообще ничего не читать. Большинство его просто не поймет. По крайней мере я нахожусь в их числе. Осилил страниц 50 из трехтомника. Возвращаться пока не планирую
Ничего подобного 3-е издание Кормана лучше Скиены, который болье общие советы дает, чем объясняет. Если вы в интернете читали только 2-е Кормана, то знайте - 3 существенно переработано.
Благодарю за совет, уже не первый ссылающийся на coursera. Проблема только остается в знании английского достаточного для слухового восприятия технического текста
Сравнивать больше особо нечего :) Надо слушать. Курсы во многом пересекаются. Алгоритмы же одни и те же во многом. Сейчас много мусорных курсов, но эти — высший класс. Слуховое восприятие английского как раз тут и прокачивается. Там же английские субтитры есть. Очень скоро они мне начали мешать :) Принстоновский курс Седжвика сейчас идёт. Что до книг, то "Алгоритмы. Вводный курс" Кормена для нас, новичков лучшая :) Просто, доступно и интересно. ТРИЗ тоже занимательно, я заинтересовался. Сейчас на universarium.org курс по ТРИЗ открыт как раз. Вернее это не курс, а скорее запись семинаров. Но чтобы составить себе представление, вполне годится.
На coursera отличный курс Седжвика. https://www.coursera.org/instructor/~211
Вообще круто рассказывает. С наглядной демонстрацией. На курсе есть форум с тонной проблем и решений. Короче - рекомендую
Начать можно с книги Грокаем алгоритмы, но учитывайте, что в ней самые основы. Если что-то посерьезней, то можно почитать Алгоритмы Рода Стивенса. Если поискать, то можно найти к ней исходники на Java и Python. Также неплох этот курс по алгоритмам, но в нём примеры только на Python, ну и Big Geek для новичков тоже норм, но там по большей части на C#.