1.9 KiB
1.9 KiB
🎯 2. План подготовки: Что повторить и Что решить в первый раз
Разбиваем подготовку на 5 ключевых блоков: Блок 1. Проектирование структур и ООП (Почти 100% будет на 2-м этапе!)
🔄 Обязательно повторить: LRU Cache (LeetCode #146 - Medium) — напиши его на Java с нуля с left/right стражниками!
🔄 Повторить: Insert Delete GetRandom O(1) (LeetCode #380 - Medium) — ArrayList + HashMap.
🆕 Решить в первый раз: Design Hit Counter (LeetCode #362 - Medium) — ArrayDeque за 300 секунд.
Блок 2. Монотонный Стек (Фирменный стиль Яндекса)
🆕 Решить в первый раз: Daily Temperatures (LeetCode #739 - Medium) — идеальная вводная в монотонный стек!
Блок 3. Графы и Дейкстра
🔄 Повторить: Course Schedule I & II (LeetCode #207/210 - Medium) — Алгоритм Кана (BFS с indegree).
🆕 Решить в первый раз: Network Delay Time (LeetCode #743 - Medium) — Алгоритм Дейкстры на Java через PriorityQueue.
Блок 4. Префиксные суммы и Математика остатков
🔄 Повторить: Subarray Sum Equals K (LeetCode #560 - Medium) — pref - k в HashMap.
🔄 Повторить: Continuous Subarray Sum (LeetCode #523 - Medium) — pref % k в HashMap.
Блок 5. Отрезки и Бинпоиск
🔄 Повторить: Merge Intervals (LeetCode #56 - Medium) — с List<int[]> и res.toArray(new int[0][0]) на Java.
🔄 Повторить: Search in Rotated Sorted Array (LeetCode #33 - Medium) — двухпроходный бинпоиск по Маврину.