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

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

Старт курсу
Очікується

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

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

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

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

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

Старт курсу
Очікується
Тривалість:
15 год.
Кількість уроків:
10 занять
Вартість навчання:
91 USD

Форма навчання

Онлайн навчання
Корпоративне

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

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

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

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

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

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

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

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

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

Що ви отримаєте на курсі

Онлайн уроки з ментором у Zoom

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

Безкоштовний відеокурс

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

Сертифікат

по проходженню курсу

Наявність сертифіката Навчального Центру CyberBionic Systematics свідчить про Ваш володінні новими знаннями і навичками, а значить, дозволяє вигідно виділитися на тлі інших кандидатів і збільшує шанси на успішне працевлаштування або просування по кар'єрних сходах. Для отримання сертифікату після закінчення навчання, необхідно успішно пройти тестування за відповідним курсом на Testprovider.com

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

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

Очікується

Записатися
на пробний урок
Будь ласка зачекайте...
Ваша заявка прийнята! Менеджер навчального центру зв'яжеться з Вами найближчим часом.
Мессенджер: