Практикум з Алгоритмів

Курс Практикум з Алгоритмів

Для кого цей курс

Курс призначений для програмістів-початківців, студентів, які вивчають комп'ютерні науки, а також для IT-інженерів, які бажають зрозуміти, як вирішувати комбінаторні задачі та оптимізовувати алгоритми.

Попередні вимоги

Базові знання мови програмування C#
Математика та логіка в межах шкільної програми
Duration

Тривалість

15 год.
Count

Кількість уроків

10 занять
Price

Вартість навчання

91
Included

Курс входить до

Спеціальності

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

1
Цикли. Графічні візерунки.
На цьому уроці ми будемо доводити навичку використання циклів до досконалості. Щоб досягти інтуїтивного розуміння, краще «один раз побачити», тому ми будемо малювати химерні візерунки, використовуючи комбінації вкладених циклів і умов.
2
Прості числа. Оптимізація алгоритмів.
На цьому уроці ми напишемо алгоритм генерації простих чисел, а потім почнемо його оптимізувати різними способами, заміряючи час роботи кожного варіанту.
3
Прості задачі на перебір варіантів.
На цьому уроці ми розв’яжемо декілька комбінаторних задач методом "грубої сили", а потім розглянемо ідеї оптимізації кожного алгоритму.
4
Гра зі штучним інтелектом. Пошук кращого ходу перебором.
На цьому уроці ми створимо просту гру, а потім навчимо комп'ютер в неї грати: створимо штучний інтелект для пошуку гарного ходу.
5
Контрольна робота на перебір варіантів.
На цьому уроці буде "спортивне програмування". У Вас буде декілька комбінаторних задач на перебір варіантів та обмежений час. Подивимося, чого Ви навчилися і скільки задач встигнете вирішити!
6
Рекурсія. Побудова фракталів.
На цьому уроці ми будемо доводити навичку використання рекурсії до досконалості. Щоб досягти інтуїтивного розуміння, краще «один раз побачити», тому ми будемо малювати фрактали - повторювані візерунки, використовуючи алгоритми з рекурсивним викликом.
7
Складні функції. Оптимізація алгоритмів.
На цьому уроці ми напишемо алгоритми обчислення деяких алгебраїчних функцій, а потім почнемо їх оптимізувати різними способами, заміряючи час роботи кожного варіанту.
8
Складні завдання на перебір варіантів.
На цьому уроці ми вирішимо кілька комбінаторних задач методом динамічного програмування з використанням рекурсії та без неї.
9
Гра зі штучним інтелектом. Пошук альфа-бета відсіканням.
На цьому уроці ми продовжимо створення штучного інтелекту для нашої гри. Але на цей раз ми скористаємося рекурсивним пошуком в глибину з відсіканням помилкових рішень.
10
Контрольна робота на динамічне програмування.
На цьому уроці буде "спортивне програмування". У Вас буде декілька комбінаторних задач на динамічне програмування та обмежений час. Подивимося, чого Ви навчилися і скільки задач встигнете вирішити!

Спробуй безкоштовно

Повноцінне заняття з тренером

Що входить до курсу

15 годин живого навчання з тренером

Практичні заняття та перевірка ДЗ 

Спілкування з групою

Підтримка ментора та асистента

Тестування та Сертифікат

Відео курс від ITVDN

Як відбувається навчання

1 Arrow

Живі онлайн заняття
з тренером

Заняття групи проходять онлайн. Це ефективне живе спілкування. Всі уроки записуються і доступні для повторного перегляду.
2 Arrow

Виконання
домашніх завдань

До кожного уроку розроблені практичні завдання, які необхідно виконувати і здавати у спеціальній LMS системі
3 Arrow

Перевірка ДЗ
та фідбек

Усі роботи студентів перевіряються
і по кожному завданню надається фідбек з оцінкою та рекомендаціями.
4

Тестування
та сертифікація

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

Сертифікат після закінчення курсу

Certificate

Сертифікат після закінчення курсу

Icon Тестування та сертифікація ІТ фахівців проходить на нашій власній платформі TestProvider.com
Icon Ви отримуєте завірений сертифікат від CyberBionic Systematics, який підтверджує рівень ваших знань та збільшує шанси на успішне працевлаштування.
Icon Кожен сертифікат має серійний номер, роботодавець може його перевірити та переконатися у справжності сертифіката.

Готовий
почати навчання?

Відправляй заявку та зафіксуй свою знижку на навчання

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

Компанії, в яких працюють наші студенти
Company where our clients work Company where our clients work Company where our clients work
Company where our clients work Company where our clients work Company where our clients work
Company where our clients work Company where our clients work Company where our clients work
Company where our clients work Company where our clients work Company where our clients work
Company where our clients work Company where our clients work Company where our clients work
Company where our clients work Company where our clients work Company where our clients work

Залишилися питання?

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

Image

Про курс Практикум з Алгоритмів

Курс складається з двох частин. У першій ми розглядаємо способи "універсального" розв’язання комбінаторних задач методом повного перебору і способи оптимізації цих алгоритмів. У другій частині ми задіємо метод динамічного програмування з рекурсією, який дозволить створювати дійсно швидкі та ефективні алгоритми пошуку.

Комбінаторні алгоритми (Уроки 1-5).

Комбінаторика вивчає варіанти розміщення об'єктів. Комбінаторні алгоритми передбачають перебір усіх варіантів розташування об'єктів та пошук оптимального рішення, яке задовольняє заданим умовам. Комбінаторні задачі в програмуванні зустрічаються дуже часто. Завдання-мінімум для будь-якого програміста - вміти їх вирішувати повним перебором і застосовувати методи оптимізації цих алгоритмів.

Динамічне програмування. (Уроки 6-10).

Алгоритми повного перебору пишуться просто, але працюють дуже довго. Застосовуючи метод динамічного програмування можна значно прискорити час пошуку рішення. Ідея полягає в тому, щоб розділити вихідну задачу на декілька таких самих, але з меншими початковими даними. Для створення таких алгоритмів зазвичай використовується рекурсія.

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

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