Изучали информатику - но никогда не понимали сложную тему структур данных и алгоритмов? Или, может быть, вы программист-самоучка, практически ничего не знающий об этой важной теме. Или, возможно, вы провалили собеседование, потому что не смогли ответить на основные вопросы о структуре данных и алгоритмах. Итак, почему структуры данных так важны в наши дни?
Структуры данных и алгоритмы являются шаблонами для решения проблем. Разработчики, которые знают больше о структурах данных и алгоритмах, лучше решают проблемы. Вот почему такие компании, как Google, Microsoft и Amazon, всегда задают вопросы о структуре данных и алгоритмах интервью. Они хотят оценить ваши навыки решения проблем. Их не волнует, сколько языков программирования и фреймворков вы знаете.
Сложная тема, сделанная простой
Вот почему я сделал этот курс. Я хочу раз и навсегда демистифицировать структуры данных и алгоритмы.
Я помню, как безнадежно запутался, когда мой лектор в колледже пытался преподавать это много лун назад. Поэтому я должен был учить себя. Теперь я эксперт по этой теме, и я хочу сэкономить вам десятки часов, которые я потратил в библиотеке, пытаясь обернуть вокруг нее голову.
К концу этого курса ...
Вы сможете:
- Писать лучше и быстрее код
- Стать лучшим разработчиком
- Повысить свои навыки решения проблем
- Реализовать все необходимые структуры данных с нуля
- Использовать десятки популярных алгоритмов
Что вы собираетесь изучать
Этот курс является первым из серии. В этой части мы сосредоточимся на линейных структурах данных. Часть 2 посвящена деревьям и графикам. Часть 3 о алгоритмах поиска и сортировки.
Вот что вы собираетесь выучить в первой части:
- Big O
- Массивы
- Связанные списки
- Стеки
- Очереди
- Хеш-таблицы
Требования
В этом курсе я использую Java для обучения этим концепциям, но вы можете применять эти концепции на любом языке программирования. Наше внимание сосредоточено на структурах данных и алгоритмах, а не на языках программирования и инструментах.
Все, что вам нужно, чтобы пройти этот курс, это некоторые базовые навыки программирования. Если вы знаете переменные, циклы и условные операторы, у вас все хорошо. Если вам нужно быстро освежиться, чтобы освоиться с синтаксисом Java, вы можете посмотреть первую часть моей серии Java.
Вам не нужен опыт работы со структурами данных или алгоритмами для прохождения курса.