Теоретическая часть:
Подборки:
Awesome Competitive Programming: https://codeforces.com/blog/entry/23054
Coding Interview University: https://github.com/jwasham/coding-interview-university
Ресурс с большим кол-вом инфы по Computer Science на английском: https://teachyourselfcs.com
Книги:
Общая теория:
1) Algorithms (4th Edition) от Robert Sedgewick
2) The Algorithm Design Manual от Steven S. Skiena
3) Guide to Competitive Programming от Antti Laaksonen
С фокусом на подготовке к собеседованиям:
1) Cracking the Coding Interview от Gayle Laakmann McDowell
2) Elements of programming interviews in Java от Andan Aziz
Очень удобный сайт для подбора книг https://anvaka.github.io/greview/
Ресурсы для практики решения задачек:
https://leetcode.com (Большой набор задач с собеседований)
https://firecode.io (Очень заходит для начинающих, но особо не развивается)
https://hackerrank.com (Описание задач больше похоже на олимпиадное программирование)
https://codeforces.com (Олимпиадное программирование как оно есть)
https://codingcompetitions.withgoogle.com (Соревнования проводимые Google)
Подборка задач от hackerrank для подготовки к собеседованиям: https://www.hackerrank.com/interview/interview-preparation-kit
Курсы по алгоритмам на русском:
Очень короткий курс по структурам данных: https://stepik.org/course/1547
Курс по алгоритмам покрывающий основные темы: https://stepik.org/course/217
Курс по динамическому программирования для начинающих: https://www.youtube.com/watch?v=AawQnuYSY4Y&list=PLUfHxBkkFMScK6mOOWp5s6LgbzmtfwmYQ
Алгоритмическое программирование Очно-заочный курс Петра Калинина: https://algoprog.ru
Математика для олимпиад по программированию: https://stepik.org/course/4603
Курсы по алгоритмам на английском:
Курс от ИТМО: https://courses.edx.org/courses/course-v1:ITMOx+I2CPx+1T2018/course/
Курс от СПБГУ: https://www.coursera.org/learn/competitive-programming-core-skills
Статья на русском о подготовке и прохождении собеседования в гугл и фейсбук: https://tproger.ru/articles/work-in-google/
Leetcode Patterns: https://medium.com/leetcode-patterns
LeetCode course: https://github.com/sarthfrey/leetcode-course
Dynamic Programming Patterns: https://leetcode.com/discuss/general-discussion/458695/dynamic-programming-patterns
Must do Dynamic programming Problems: https://leetcode.com/discuss/general-discussion/1050391/must-do-dynamic-programming-problems-category-wise
Большая подборка материалов на все темы связанные с интервью https://docs.google.com/document/d/1VNoEUzBtyCw0fDw0X_bvuhmCwz1qhNjETPJc5VRZqm8/
System Design:
1) The System Design Primer https://github.com/donnemartin/system-design-primer
2) Grokking the System Design Interview https://www.educative.io/collection/5668639101419520/5649050225344512
3) Видео по подготовке к System Design Interview https://www.youtube.com/channel/UC9vLsnF6QPYuH51njmIooCQ/featured
Machine Learning Systems Design:
https://github.com/chiphuyen/machine-learning-systems-design
Статьи по алгоритмам:
На русском:
DSU: https://habr.com/ru/post/104772/
Topological sort: https://habr.com/ru/post/100953/
Rabin Karp: https://e-maxx.ru/algo/rabin_karp
На английском:
DP:
Презентация от Stanford: http://web.stanford.edu/class/cs97si/04-dynamic-programming.pdf
Post #468
1.19K