Записаться на курс
Пожалуйста, подождите...
Ваш запрос успешно отправлен!

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

Продолжительность:
20 ч.
Количество уроков:
10 занятий
Стоимость обучения:
2600 грн

Форма обучения

Очное обучение
Онлайн обучение
Записаться на курс

Целевая аудитория

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

Предварительные требования

• Уверенное владение персональным компьютером
• Базовые знания языка программирования C#

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

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

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

Уже на первом уроке курса нами детально рассматриваются вопросы оценки времени выполнения алгоритмов, как составной части решения поставленной задачи, поскольку для задач больших размеров важную роль играет не только мощность вычислительных средств, но и эффективность алгоритма. Далее будут рассмотрены основные структуры данных, в контексте которых мы посмотрим на односвязные и двухсвязные списки, динамические массивы, стеки, очереди, деревья и множества. Мы детально познакомимся с алгоритмами сортировки, с понятиями «хеш-таблицы» и «АВЛ-деревья». Так же, рассмотрим такую структуру данных как «Граф», которая широко используется в жизни. Освоим метод динамического программирования для решения разного рода задач. Заключительный урок нашего курса будет посвящен решению практических примеров - задачи коммивояжера, задачи о ханойских башнях и других интересных задач.

Алгоритмы и структуры данных, которые мы рассматриваем в данном курсе, можно реализовать на любом языке программирования. Мы для этого будет использоваться язык С#, базовых знаний которого будет вполне достаточно для понимания материала.

Содержание курса

Cвернуть
1
Введение в структуры и алгоритмы данных. Связные списки.
Назначением данного урока является ознакомление со структурами данных и понятием алгоритма. Рассматривается асимптотическая сложность алгоритма. Использование О-нотации. Рассматриваются односвязные и двусвязные списки.
Читать дальше
Cвернуть
2
Динамический массив, Stack, Queue и Set.
На занятии рассматриваются основные структуры данных. Разъясняется политика роста динамического массива. Рассматриваются основные методы для работы с этими структурами данных и их реализация, также объединение, пересечение, разность, симметрическая разность двух множеств.
Читать дальше
Cвернуть
3
Алгоритмы сортировки.
На занятии объясняются основные виды сортировки данных. Демонстрируется их суть и реализация. Сравниваются различные методы сортировки для различных назначений и предусловий. Кратко разъясняется суть относительно новой сортировки Timsort.
Читать дальше
Cвернуть
4
Хеш-таблицы. Деревья.
На уроке рассматривается две структуры данных: хеш-таблица и дерево. Разъясняется суть хеш-таблицы, принцип ее работы, хеш-функция и коллизии в хеш-таблицах. Осматривается структура данных «Дерево», более детально объясняется бинарное дерево поиска и добавление узлов в дерево.
Читать дальше
Cвернуть
5
Бинарное дерево поиска. АВЛ-дерево.
Данный урок посвящен рассмотрению методов для работы с бинарным деревом поиска, таких как удаление узла из дерева (3 варианта удаление), поиск узла в дереве, прямой, обратный и симметричный обходы дерева. Рассматривается суть АВЛ дерева, как модернизация бинарного дерева поиска. Разъясняется суть балансировки АВЛ дерева и способы реализации балансировки.
Читать дальше
Cвернуть
6
Графы. Часть 1.
На уроке рассматривается популярная и сложная структура данных «Граф». Введение в теорию графов, способы задания графа и два варианта поиска по графу: в ширину и глубину.
Читать дальше
Cвернуть
7
Графы. Часть 2.
На уроке рассматриваются темы из теории графов, такие как связные компоненты, Эйлеров цикл. Рассматривается известный алгоритм Ли. Разъясняется нахождение кратчайшего пути между вершинами графа. Демонстрируется алгоритм Дейкстры.
Читать дальше
Cвернуть
8
Графы. Часть 3.
На занятии идет углубление в теорию графов. Кратко излагается суть и принцип алгоритма Флойда-Уоршелла. Разъясняется и демонстрируется топологическая сортировка и поиск компонентов связности через обход в глубину.
Читать дальше
Cвернуть
9
Динамическое программирование.
На уроке рассматривается подход динамического программирования к решению многих задач. Разъясняется суть и принцип различных приемов. Демонстрируются типичные задачи и их решение.
Читать дальше
Cвернуть
10
Задачи. Практикум.
На занятии рассматриваются следующие задачи: Ханойские башни, задача коммивояжёра, задача про рюкзак.
Читать дальше

Что вы получите на курсе

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

Практические занятия и проверка дз

Бесплатный видеокурс

Онлайн тестирование и сертификация

Записаться на курс

ПРЕПОДАВАТЕЛИ КУРСА

Алгоритмы и структуры данных
Старт курса:
Продолжи
тельность:
20 ч.
Количество уроков:
10 занятий
Стоимость обучения:
2600 грн
Записаться
на курс
Пожалуйста, подождите...
Ваш запрос успешно отправлен!