Главная Школы Prog Academy Алгоритми та структури даних
Prog Academy

Алгоритми та структури даних

12 750 UAH за курс
2 месяцев
Для начинающих, Для опытных
Java
Этот курс научит вас алгоритмам и структурам данных через практические задания. Вы разберете сортировку, рекурсию, графы и другие ключевые темы. После курса у вас будет готовый проект для портфолио. Обучение включает лекции, домашние задания и возможность консультаций.

О курсе

Программа курса

Основы алгоритмов и структур данных

На этом курсе начинают с понимания, что такое алгоритм и как оценивать его эффективность. Изучают O-нотацию - это способ описывать скорость работы алгоритмов. Рассматривают различные типы структур данных и операции, которые они поддерживают.

Работа с массивами

Далее курс показывает массив как одну из основных структур данных. Разбирают три способа поиска в массиве: линейный, бинарный и интерполяционный. Каждый метод имеет разную скорость работы - это важно понимать при выборе алгоритма.

Сортировка массивов

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

Рекурсия и комбинаторные алгоритмы

На этом этапе курс учит работать с рекурсией - когда функция вызывает саму себя. Рассматривают различные виды рекурсии и способы ее реализации. Показывают, как ускорить рекурсивные алгоритмы с помощью мемоизации - это техника сохранения промежуточных результатов.

Списки, стек и очередь

Этот блок посвящен основным линейным структурам данных. Рассматривают односвязные и двусвязные списки, их методы реализации и основные операции. Также изучают стек и очередь - структуры, которые работают по принципу "первым пришел - первым ушел" и "последним пришел - первым ушел".

Хеш-таблицы и ассоциативные массивы

Здесь курс объясняет, как работают хеш-функции и хеш-таблицы. Это структуры, которые позволяют быстро находить данные по ключу. Ассоциативные массивы на основе хеш-таблиц - это мощный инструмент для эффективного хранения информации.

Графы и алгоритмы на графах

На этом этапе курс вводит понятие графов - структур, состоящих из вершин и ребер. Рассматривают типы графов и основную терминологию. Показывают три способа представления графов в компьютере: матрица смежности, матрица инцидентности и список смежности. Изучают два ключевых алгоритма поиска: в глубину и в ширину.

Деревья и пирамиды

Этот блок посвящен специальным видам графов. Деревья - это графы без циклов, а бинарные деревья поиска позволяют быстро находить элементы. Пирамиды - это особые деревья, которые используют для пирамидальной сортировки. Обе структуры имеют практическое применение в реальных задачах.

Динамическое программирование

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

Особенности курса

Курс включает 16 онлайн занятий в группе с возможностью просмотра записей. Участники имеют доступ к чату с тренером и группой, получают проверку домашних заданий. Дополнительно проводятся 4 занятия IT English Speaking Club для развития профессиональных языковых навыков.

Доступен пакет Plus, который содержит все из стандартного пакета, а также авторский курс с основ программирования на Java в записи, 60 минут индивидуальных консультаций с преподавателем и безлимитный доступ к IT English Speaking Club в течение обучения.

Что включено

Выдается диплом/сертификат
Гибкий график
Реальный проект в портфолио
Сопровождение ментора