Привет ребята ,

Чтобы стать хорошим конкурентоспособным программистом или иметь возможность преуспеть на собеседованиях, большинство препятствий преодолевается с помощью задач динамического программирования и графических алгоритмов.

В DP нам большую часть времени нужны хорошие навыки интуиции и мозговой штурм, чтобы разбиваться на более мелкие подзадачи и строить рекурсивные решения там после того, как не нужно много бороться с ее оптимизацией.

В DP также полезно знать несколько общих шаблонов и шаблонов, чтобы найти решение немного быстрее, но в этом посте мы немного больше сосредоточимся на алгоритмах графов. Я также поделюсь ресурсами, которые были весьма полезны для меня.

Мои прежние ошибки при изучении графика ::

1) Больше внимания уделяйте реализации, а не пониманию ее концепции ::

Когда я был на втором курсе btech, я впервые пошел изучать графики и был нубом во всех этих концепциях, я начал следить за реализацией графиков в ноутбуке (с таким количеством классов и методов), а затем подумал, что это так сложно реализовать и использовать эти концепции в режиме реального времени.

2) Начните переходить к случайным материалам без каких-либо исследований ::

Всегда легче изучать концепции с помощью видео, чем текстового материала, но вам всегда нужны статьи и текстовые руководства, чтобы освоить любую тему после изучения основ. Таким образом, у нас должен быть баланс между слепым следованием любым плейлистам YouTube.

3) Привычка не обсуждать с друзьями

Как человеческая природа, мы начинаем конкурировать из каждого социального круга, и в результате этого иногда мы формируем токсичное пространство среди друзей, чтобы скрыть все, что вы изучаете, делитесь хорошими ресурсами и обсуждаете сложные проблемы/алгоритмы. В конце концов вы поймете, что хорошая здоровая конкуренция намного лучше для быстрого обучения. Когда вы обсуждаете алгоритмы и все такое, мы разделяем множество мыслительных процессов, различных способов и интуитивных представлений о решении проблемы.

Помимо этих глупых историй, мы делимся некоторыми важными ресурсами .

1) https://www.hackerearth.com/practice/algorithms/graphs/graph-representation/tutorial/ :: Эти простые для понимания руководства по hackerearth настолько точны. Я все еще пересматриваю эти концепции отсюда. Помимо графика, мы можем узнать много алгоритмов из его раздела алгоритмов.

2) https://cp-algorithms.com/ это было очень полезно для меня, чтобы получить полный контекст любого алгоритма. Если вы конкурентоспособный программист, это должно быть вашим справочником.

3) https://www.youtube.com/playlist?list=PLEJXowNB4kPzByLnnFYNSCoqtFz0VKLk5 этот плейлист YouTube канала Techdose также достаточно богат, чтобы начать с графиков и понять его концепции.

Где попрактиковаться ::

1) https://leetcode.com/discuss/general-discussion/655708/Graph-For-Beginners-Problems-or-Pattern-or-Sample-Solutions Эта ссылка позволит вам использовать очень хорошие вопросы и различные шаблоны для графовых алгоритмов.

2) https://cses.fi/problemset/list/ Это мой любимый набор задач на освоение любого набора алгоритмов.