Для кого предназначен этот курс?
Этот курс предназначен для того, чтобы помочь каждому повысить свой навык и уверенность при прохождении собеседований по кодированию. Объяснения начинаются с малого, поэтому даже если вы никогда не проходили курс по структурам данных и алгоритмам, вы будете в полном порядке.
Этот курс идеально подходит для тех:
- у кого запланировано собеседование
- кто планирует в ближайшее время подавать заявки на стажировку либо работу и хочет подтянуть знания
- кто является новичком в области алгоритмов и хочет заложить хорошую основу для начала обучения
- просто хочет улучшить свои навыки в кодировании на собеседованиях.
Единственное предположение заключается в том, что вы уже знаете основы кодирования и владеете таким распространенным языком, как Java, C++ или Python.
Что дает этот курс?
Независимо от уровня ваших навыков, после прохождения этого курса вы будете готовы к прохождению собеседований по кодингу в технологических компаниях. Если ваша цель - компании высшего уровня, такие как FAANG, прохождение этого курса даст вам все основы, необходимые для подготовки к собеседованиям.
Курс состоит из 13 глав. Первая глава - это краткое введение, в котором рассказывается о фундаментальных навыках, необходимых для успешного прохождения курса, а также его содержание.
Следующие 10 глав посвящены структуре данных или алгоритму:
- массивы и строки
- связные списки
- хэшмапы и множества
- стеки и очереди
- деревья и графы
- кучи
- алгоритмы (оценка жадности алгоритмов)
- бинарный поиск
- обратный путь
- динамическое программирование
Это самые важные и наиболее распространенные структуры данных и алгоритмы кодирования на собеседованиях.
В каждой из этих глав вы можете ожидать найти:
- Объяснение структуры данных/алгоритма, что она умеет делать, как ее можно использовать для решения проблем, а также детали реализации и временной/пространственной сложности.
- Общие шаблоны и приемы для решения проблем, связанных со структурой данных или алгоритмом.
- Примеры, в которых рассматривается ряд соответствующих проблем, чтобы помочь проиллюстрировать концепции.
- Точно подобранные практические задачи, которые помогут вам развить мышечную память на полученные знания.
12-я глава содержит ряд полезных инструментов, которые можно использовать в дальнейшем. Здесь есть шаблоны кода для всех распространенных паттернов, шпаргалки по оценке времени и пространству, блок-схема, которую можно использовать как общее руководство при попытке понять, какую структуру данных или алгоритм следует использовать.
Мы также разберем этапы интервью по кодированию и то, что вы должны делать на каждом этапе. Чтобы продемонстрировать эти советы, в 12-й главе есть видеоролики с шуточным собеседованием FAANG.
Последняя глава - это бонусная глава, в которой мы рассмотрим еще несколько техник, которые не настолько распространены/широки, чтобы заслуживать отдельной главы.
Все материалы являются оригинальными для этого курса и эксклюзивными для LeetCode.
Особенности:
92 примера решения задач. Эти проблемы используются для демонстрации общих паттернов, как их распознать и как реализовать решения. Объяснения понятны и лаконичны для начинающих.
65 курируемых практических задач. Эти задачи точно подобраны и расположены таким образом, чтобы вы могли применить полученные знания в каждой главе. Решайте эти задачи в интегрированной среде кодирования LeetCode - лучший способ научиться - это делать.
12 тестов. Каждая структура данных или алгоритм имеют тест в конце главы для проверки ваших знаний (глава "Деревья и графы" имеет два теста, а последняя глава имеет "итоговый" тест).
Пожизненный доступ. Заплатите один раз и получите доступ к курсу и всем преимуществам навсегда.
Не требуется установка. Не беспокойтесь о IDE или других программах. Все находится прямо здесь.
Интегрированная среда. Решайте задачи, используя среду кодирования LeetCode, которая поддерживает 19 различных языков программирования.
Предполагаемое время прохождения всего курса: 25-30 часов.