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

  • Online
  • Для початківців, Для досвідчених
  • Fullstack
Навчальний центр: Foxminded
Формат:Курс
Мова викладання:Ukrainian
Тривалість навчання:3 місяців
Початок курсу:Будь-який момент
Вартість навчання:1 975 UAH за курс

Після проходження курсу ви писатимете більш ефективний код та зможете правильно вибудовувати архітектуру проекту та окремих модулів, а також успішно проходити співбесіди.

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

Асимптотична складність алгоритму

На цьому етапі ви дізнаєтеся, чому не можна використовувати стандартне значення часу для оцінки швидкості роботи алгоритму. Ми розглянемо поняття асимптотичної складності алгоритму і навчимося визначати її на багаточисленних прикладах.

Структури даних

Познайомимося з основними та найбільш використовуваними структурами даних: масив, список, стек, черга, хеш-таблиця, дерево, бінарне дерево пошуку.

Алгоритми сортування

Розберемо велику кількість алгоритмів сортування, серед яких швидке сортування, сортування heap-sort, сортування підрахунком тощо. Оскільки алгоритм швидкого сортування користується популярністю на співбесідах, розглянемо його дуже детально (Який елемент вибрати опорним і чому? Які є схеми розбиття, їх переваги та недоліки?).

Основи теорії чисел

Поговоримо про дільники числа, прості числа, факторизацію. Розглянемо алгоритм Евкліда для знаходження найбільшого спільного дільника і найменшого спільного кратного. Познайомимося з алгоритмом "решето Ератосфена" для знаходження простих чисел.

Алгоритми у графах (Частина 1)

Дізнаємося, що є структурою даних граф. Розглянемо сфери її застосування. Навчимося реалізовувати прості алгоритми на графах, такі як пошук у глибину і ширину, знаходження компоненту зв'язності та ін.

Алгоритми у графах (Частина 2)

Розберемося, як працюють складніші алгоритми на графах: алгоритм Дейкстри та алгоритм Прима. Навчимося знаходити мости та точки зчленування для заданого графа.

Геометричні задачі

Серед основних цікавих завдань, які ми розглянемо в рамках цього тренінгу, будуть знаходження площі довільного багатокутника та побудова опуклої оболонки для заданого набору точок на площині за допомогою алгоритму Грехема.

Пошук в тексті

Поговоримо про хешування рядків за допомогою поліномінальної хеш-функції. Детально розберемо алгоритми Рабіна-Карпа та Кнута-Морріса-Пратта для знаходження рядка у тексті.

Постскриптум

Розглянемо принципи балансування AVL-дерева. Вирішимо кілька популярних завдань, а також перевіримо отримані знання за допомогою вікторини.

Як проходить навчання

  • Ви отримуєте доступ до закритих лекцій (9 лекцій, що розбиті на 2-4 короткі відео)
  • Прослуховуєте їх, вивчаєте нову цікаву інформацію

Умови навчання

  • Необмежений доступ до курсу
  • Відповіді на питання від автора курсу у чаті Slack протягом 3х місяців після покупки курсу

Початкові вимоги

  • Знання однієї з сучасних мов програмування (Java, C/C++, C#, Python та ін.) на базовому рівні
  • Практика програмування (необов'язково комерційного) від півроку. Який курс можна використовувати для підготовки? Будь-який курс програмування рівня Start (наприклад, Java Start).

Викладачі курсу

Олександр Басалкевич - Senior C++ Engineer

Категорії курсу

Читайте нас в Telegram, щоб не пропустити анонси нових курсів.

Схожі курси

Навчальний центр
GoIT
Формат
Online
Початок навчання
15.10.2025
Тривалість
10 місяців
Рівень
Для початківців
Мова навчання
Ukrainian
Вартість
4 080 UAH за місяць
Навчальний центр
DAN IT Education
Формат
Online
Початок навчання
31.10.2025
Тривалість
10 місяців
Рівень
Для початківців
Мова навчання
Ukrainian
Вартість
4 500 UAH за місяць
Навчальний центр
Hillel IT school
Формат
Online
Початок навчання
16.10.2025
Тривалість
70 занять
Рівень
Для початківців
Мова навчання
Ukrainian
Вартість
37 600 UAH за курс
Навчальний центр
Foxminded
Формат
Online
Початок навчання
02.12.2024
Тривалість
3 місяців
Рівень
Для досвідчених, Для професіоналів
Мова навчання
Ukrainian
Вартість
19 300 UAH за курс