Продолжительность
29 ч 27 мин 14 сек
Количество уроков
13 Видео
Дата добавления
12.03.2024
Без зубрежкки научишься правильно решать задачи, которые встретятся на реальном собеседовании, потренируешься на mock-собеседованиях и разберешь задания, которые встречаются на собеседованиях в OZON, Tinkoff, ВК, СБЕР, Авито и Яндекс. Преподаватель – Александр Алексеев – ex-СTO Tinkoff
Этот курс подойдёт для Juniir и Middle-разработчиков:
Чтобы выжать из курса максимум, тебе необходимо знать основы программирования. Сам курс будет на Python, но тебе достаточно знать свой язык, на котором ты работаешь. Мы будем использовать простой синтаксис, который будет понятен всем.
Знакомая ситуация:
- 1. Не могу устроиться в компанию мечты, спотыкаюсь об алгоритмическое собеседование
- 2. Нарешиваю алгоритмические задачи, но не понимаю их сути. Информация в голове не структурирована
- 3. Пару раз уже завалился на собеседованиях, потому что попадались сложные задачи, которые я не мог решить
- 4. Не знаю, как правильно себя вести на собеседовании и как правильно разговаривать с интервьюером
- 5. Знаю алгоритмы, но как только дело доходит до практики — не могу ничего сделать
- 6. Не знаю, что меня ждет на собеседовании. Не понимаю, к чему готовиться и как его не провалить
Этот курс повысит твои шансы на трудоустройство в BigTech минимум в 2 раза:
- 1. Изучишь теорию, которая точно понадобится для успешного прохождения алгоритмического собеседования
- 2. Научишься понимать суть и идею каждой задачи без заучивания схемы решения
- 3. Прорешаешь все задачи, которые могут встретиться на алгоритмическом собеседовании: простые и уровня hard+
- 4. Узнаешь, как правильно вести себя на собеседовании и как общаться с интервьюером, чтобы не провалиться
- 5. Разберешь задачи и ситуации, которые встречались на реальных собеседованиях в OZON, Яндекс, ВК, Тинькофф, СБЕР и Авито + узнаешь особенности прохождения собеседований в эти компании и типичные темы, которые они спрашивают
- 6. Научишься решать сложные задачи и поймешь, что делать, если тебе попадается задание, которое не получается решить
Полгода-год более реальный срок. Это примерно 350 задач с литкод, где большинство должно быть медиум сложности, хард редко дают на собесе, если дали значит хотят завалить, решить ее за 20-40 минут под стрессом почти нереально, нет смысла пытаться. Особое внимание стоит уделить стекам, деревьям, спискам, и графам.
Алгоритмы для всех уровней примерно одинаковые, уровень сеньорности определяется на системном дизайне и бехавиор интервью, наебать систему на них практически нереально
1. Depth-First Search (DFS)
1. 79 - Word Search
2. 200 - Number of Islands
3. 695 - Max Area of Island
4. 463 - Island Perimeter
5. 733 - Flood Fill
6. 130 - Surrounded Regions
7. 417 - Pacific Atlantic Water Flow
8. 261 - Graph Valid Tree
9. 329 - Longest Increasing Path in a Matrix
10. 688 - Knight Probability in Chessboard
11. 332 - Reconstruct Itinerary
12. 1306 - Jump Game III
2. Breadth-First Search (BFS)
1. 286 - Walls and Gates
2. 542 - 01 Matrix
3. 994 - Rotting Oranges
4. 752 - Open the Lock
5. 127 - Word Ladder
6. 934 - Shortest Bridge
7. 1466 - Reorder Routes to Make All Paths Lead to the City Zero
8. 1162 - As Far from Land as Possible
9. 815 - Bus Routes
10. 1197 - Minimum Knight Moves
11. 1091 - Shortest Path in Binary Matrix
12. 1293 - Shortest Path in a Grid with Obstacles Elimination
3. Topological Sort
1. 207 (Course Schedule)
2. 210 (Course Schedule II)
3. 1136 (Parallel Courses)
4. 310 (Minimum Height Trees)
5. 444 (Sequence Reconstruction)
6. 269 (Alien Dictionary)
7. 802 Find Eventual Safe States
8. 1203 Sort Items by Groups Respecting Dependencies
9. 1192 Critical Connections in a Network (Tarjan's Algorithm)
4. Dijkstra's Algorithm
1. 743 - Network Delay Time
2. 1334 - Find the City With the Smallest Number of Neighbors at a Threshold Distance
3. 1514 - Path with Maximum Probability
4. 1631 - Path With Minimum Effort
5. 778 - Swim in Rising Water
6. 1786 - Number of Restricted Paths From First to Last Node
7. 787 - Cheapest Flights Within K Stops
8 882 - Reachable Nodes In Subdivided Graph
9. 1368 - Minimum Cost to Make at Least One Valid Path in a Grid
10. 1791 - Minimum Number of Refueling Stops
5. Union-Find (Disjoint Set Union)
1. 547 - Number of Provinces
2. 684 - Redundant Connection
3. 721 - Accounts Merge
4. 1584 - Min Cost to Connect All Points
5. 990 - Satisfiability of Equality Equations
6. 1319 - Number of Operations to Make Network Connected
7. 1202 - Smallest String With Swaps
8. 1632 - Rank Transform of a Matrix
6. Floyd-Warshall / All-Pairs Shortest Path
1. 1462 - Course Schedule IV
2. 785 (Is Graph Bipartite?)
3. 886 (Possible Bipartition)
4. 1617 (Count Subtrees With Max Distance Between Cities)
5. 1125 (Smallest Sufficient Team)
Algoexpert - 4/10. Хороший подбор задач, но многие решения не самые лучшие, слишком длинные видео иногда на довольно простых задачах. Лично для меня большой минус, что код пишет в python, я готовился в Java.
Neetcode - 6/10. Больше задач чем у algoexpert, лучше объясняет и видео короче. Но опять же python.
structy.net - 9/10. Наверно лучший ресурс для DSA, особенно если только начинаешь. Очень крутые видео, разжеванные для мелочей. Единственный минус - мало задач(около 120).
От себя, как человека проходившего выше перечисленные курсы, а так же закончившего, пожалуй, все explore карты leetcode и многое другое, добавлю:
10/10 - Competitive Programming 4 (https://cpbook.net/). Закончите оба тома книги и сомневаюсь что вы не пройдете хоть одно алго-собеседование.