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

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

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

Про курс

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

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

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

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

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

Сортування масивів

Тут переходять до алгоритмів сортування. Спочатку розглядають прості методи: бульбашкове сортування, сортування вибором та вставками. Потім переходять до складніших логарифмічних алгоритмів: сортування злиттям та швидке сортування. Кожен метод має свої переваги в різних ситуаціях.

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

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

Списки, стек та черга

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

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

Тут курс пояснює, як працюють хеш-функції та хеш-таблиці. Це структури, які дозволяють швидко знаходити дані за ключем. Асоціативні масиви на основі хеш-таблиць - це потужний інструмент для ефективного зберігання інформації.

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

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

Дерева та піраміди

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

Динамічне програмування

В кінці курсу розглядають елементи динамічного програмування. Це метод розв'язання складних задач шляхом розбиття їх на простіші підзадачі. Техніка особливо корисна для оптимізаційних задач, де потрібно знайти найкращий розв'язок.

Особливості курсу

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

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

Що включено

Видається диплом/сертифікат
Гнучкий графік
Реальний проект у портфоліо
Супровід ментора