Как проходит процесс найма в Яндекс (и советы, как повысить шансы на успех + много материалов для подготовки):
https://yandex.ru/jobs/pages/dev_interview
Примеры задач, которые могут встретиться на интервью (6 задачек подходящие для Python, С++, С#, Java, JavaScript, Kotlin, Swift, Objective-C):
https://contest.yandex.ru/contest/8458/enter
https://m.habr.com/ru/company/yandex/blog/449890
https://habr.com/ru/company/yandex/blog/564132
https://github.com/donnemartin/system-design-primer/blob/master/README.md#appendix
https://practicum.yandex.ru/algorithms-interview
- https://leetcode.com/problemset/all
- https://leetcode.com/problemset/algorithms
- https://leetcode.com/problems/reverse-linked-list/solution
- https://www.geeksforgeeks.org/reverse-a-linked-list
- https://www.interviewbit.com/practice
-
Примеры наших задач:
-
Оценка сложности:
-
Подборка по алгоритмам:
-
Алгоритмы, которые чаще всего бывают в задачках:
- сортировки (например, bubble sort или quicksort)
- разворота одно/двусвязного списка
- разворота строки
- обхода дерева
Highly recommended the following book (engineering sections): http://www.crackingthecodinginterview.com/contents.html
What to revise:
- complexity of sorting algorithms
- after solving every issue algorithm’s time complexity is usually discussed
- DFS/BFS are frequently asked during coding interviews
- solving some Dynamic programming problems would be useful because they are less intuitive than for example Greedy
- Questions similar to climbing stairs: https://leetcode.com/problems/climbing-stairs/description