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

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

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

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

Курс призначений для програмістів-початківців, студентів, які вивчають комп'ютерні науки, а також для 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

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

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

Очікується
  • Ukraine (Україна)+380
  • Poland (Polska)+48
  • Kazakhstan (Казахстан)+7
  • Azerbaijan (Azərbaycan)+994
  • Afghanistan (‫افغانستان‬‎)+93
  • Albania (Shqipëri)+355
  • Algeria (‫الجزائر‬‎)+213
  • American Samoa+1
  • Andorra+376
  • Angola+244
  • Anguilla+1
  • Antigua and Barbuda+1
  • Argentina+54
  • Armenia (Հայաստան)+374
  • Aruba+297
  • Australia+61
  • Austria (Österreich)+43
  • Azerbaijan (Azərbaycan)+994
  • Bahamas+1
  • Bahrain (‫البحرين‬‎)+973
  • Bangladesh (বাংলাদেশ)+880
  • Barbados+1
  • Belarus (Беларусь)+375
  • Belgium (België)+32
  • Belize+501
  • Benin (Bénin)+229
  • Bermuda+1
  • Bhutan (འབྲུག)+975
  • Bolivia+591
  • Bosnia and Herzegovina (Босна и Херцеговина)+387
  • Botswana+267
  • Brazil (Brasil)+55
  • British Indian Ocean Territory+246
  • British Virgin Islands+1
  • Brunei+673
  • Bulgaria (България)+359
  • Burkina Faso+226
  • Burundi (Uburundi)+257
  • Cambodia (កម្ពុជា)+855
  • Cameroon (Cameroun)+237
  • Canada+1
  • Cape Verde (Kabu Verdi)+238
  • Caribbean Netherlands+599
  • Cayman Islands+1
  • Central African Republic (République centrafricaine)+236
  • Chad (Tchad)+235
  • Chile+56
  • China (中国)+86
  • Christmas Island+61
  • Cocos (Keeling) Islands+61
  • Colombia+57
  • Comoros (‫جزر القمر‬‎)+269
  • Congo (DRC) (Jamhuri ya Kidemokrasia ya Kongo)+243
  • Congo (Republic) (Congo-Brazzaville)+242
  • Cook Islands+682
  • Costa Rica+506
  • Côte d’Ivoire+225
  • Croatia (Hrvatska)+385
  • Cuba+53
  • Curaçao+599
  • Cyprus (Κύπρος)+357
  • Czech Republic (Česká republika)+420
  • Denmark (Danmark)+45
  • Djibouti+253
  • Dominica+1
  • Dominican Republic (República Dominicana)+1
  • Ecuador+593
  • Egypt (‫مصر‬‎)+20
  • El Salvador+503
  • Equatorial Guinea (Guinea Ecuatorial)+240
  • Eritrea+291
  • Estonia (Eesti)+372
  • Ethiopia+251
  • Falkland Islands (Islas Malvinas)+500
  • Faroe Islands (Føroyar)+298
  • Fiji+679
  • Finland (Suomi)+358
  • France+33
  • French Guiana (Guyane française)+594
  • French Polynesia (Polynésie française)+689
  • Gabon+241
  • Gambia+220
  • Georgia (საქართველო)+995
  • Germany (Deutschland)+49
  • Ghana (Gaana)+233
  • Gibraltar+350
  • Greece (Ελλάδα)+30
  • Greenland (Kalaallit Nunaat)+299
  • Grenada+1
  • Guadeloupe+590
  • Guam+1
  • Guatemala+502
  • Guernsey+44
  • Guinea (Guinée)+224
  • Guinea-Bissau (Guiné Bissau)+245
  • Guyana+592
  • Haiti+509
  • Honduras+504
  • Hong Kong (香港)+852
  • Hungary (Magyarország)+36
  • Iceland (Ísland)+354
  • India (भारत)+91
  • Indonesia+62
  • Iran (‫ایران‬‎)+98
  • Iraq (‫العراق‬‎)+964
  • Ireland+353
  • Isle of Man+44
  • Israel (‫ישראל‬‎)+972
  • Italy (Italia)+39
  • Jamaica+1
  • Japan (日本)+81
  • Jersey+44
  • Jordan (‫الأردن‬‎)+962
  • Kazakhstan (Казахстан)+7
  • Kenya+254
  • Kiribati+686
  • Kosovo+383
  • Kuwait (‫الكويت‬‎)+965
  • Kyrgyzstan (Кыргызстан)+996
  • Laos (ລາວ)+856
  • Latvia (Latvija)+371
  • Lebanon (‫لبنان‬‎)+961
  • Lesotho+266
  • Liberia+231
  • Libya (‫ليبيا‬‎)+218
  • Liechtenstein+423
  • Lithuania (Lietuva)+370
  • Luxembourg+352
  • Macau (澳門)+853
  • Macedonia (FYROM) (Македонија)+389
  • Madagascar (Madagasikara)+261
  • Malawi+265
  • Malaysia+60
  • Maldives+960
  • Mali+223
  • Malta+356
  • Marshall Islands+692
  • Martinique+596
  • Mauritania (‫موريتانيا‬‎)+222
  • Mauritius (Moris)+230
  • Mayotte+262
  • Mexico (México)+52
  • Micronesia+691
  • Moldova (Republica Moldova)+373
  • Monaco+377
  • Mongolia (Монгол)+976
  • Montenegro (Crna Gora)+382
  • Montserrat+1
  • Morocco (‫المغرب‬‎)+212
  • Mozambique (Moçambique)+258
  • Myanmar (Burma) (မြန်မာ)+95
  • Namibia (Namibië)+264
  • Nauru+674
  • Nepal (नेपाल)+977
  • Netherlands (Nederland)+31
  • New Caledonia (Nouvelle-Calédonie)+687
  • New Zealand+64
  • Nicaragua+505
  • Niger (Nijar)+227
  • Nigeria+234
  • Niue+683
  • Norfolk Island+672
  • North Korea (조선 민주주의 인민 공화국)+850
  • Northern Mariana Islands+1
  • Norway (Norge)+47
  • Oman (‫عُمان‬‎)+968
  • Pakistan (‫پاکستان‬‎)+92
  • Palau+680
  • Palestine (‫فلسطين‬‎)+970
  • Panama (Panamá)+507
  • Papua New Guinea+675
  • Paraguay+595
  • Peru (Perú)+51
  • Philippines+63
  • Poland (Polska)+48
  • Portugal+351
  • Puerto Rico+1
  • Qatar (‫قطر‬‎)+974
  • Réunion (La Réunion)+262
  • Romania (România)+40
  • Russia (Россия)+7
  • Rwanda+250
  • Saint Barthélemy+590
  • Saint Helena+290
  • Saint Kitts and Nevis+1
  • Saint Lucia+1
  • Saint Martin (Saint-Martin (partie française))+590
  • Saint Pierre and Miquelon (Saint-Pierre-et-Miquelon)+508
  • Saint Vincent and the Grenadines+1
  • Samoa+685
  • San Marino+378
  • São Tomé and Príncipe (São Tomé e Príncipe)+239
  • Saudi Arabia (‫المملكة العربية السعودية‬‎)+966
  • Senegal (Sénégal)+221
  • Serbia (Србија)+381
  • Seychelles+248
  • Sierra Leone+232
  • Singapore+65
  • Sint Maarten+1
  • Slovakia (Slovensko)+421
  • Slovenia (Slovenija)+386
  • Solomon Islands+677
  • Somalia (Soomaaliya)+252
  • South Africa+27
  • South Korea (대한민국)+82
  • South Sudan (‫جنوب السودان‬‎)+211
  • Spain (España)+34
  • Sri Lanka (ශ්‍රී ලංකාව)+94
  • Sudan (‫السودان‬‎)+249
  • Suriname+597
  • Svalbard and Jan Mayen+47
  • Swaziland+268
  • Sweden (Sverige)+46
  • Switzerland (Schweiz)+41
  • Syria (‫سوريا‬‎)+963
  • Taiwan (台灣)+886
  • Tajikistan+992
  • Tanzania+255
  • Thailand (ไทย)+66
  • Timor-Leste+670
  • Togo+228
  • Tokelau+690
  • Tonga+676
  • Trinidad and Tobago+1
  • Tunisia (‫تونس‬‎)+216
  • Turkey (Türkiye)+90
  • Turkmenistan+993
  • Turks and Caicos Islands+1
  • Tuvalu+688
  • U.S. Virgin Islands+1
  • Uganda+256
  • Ukraine (Україна)+380
  • United Arab Emirates (‫الإمارات العربية المتحدة‬‎)+971
  • United Kingdom+44
  • United States+1
  • Uruguay+598
  • Uzbekistan (Oʻzbekiston)+998
  • Vanuatu+678
  • Vatican City (Città del Vaticano)+39
  • Venezuela+58
  • Vietnam (Việt Nam)+84
  • Wallis and Futuna (Wallis-et-Futuna)+681
  • Western Sahara (‫الصحراء الغربية‬‎)+212
  • Yemen (‫اليمن‬‎)+967
  • Zambia+260
  • Zimbabwe+263
  • Åland Islands+358

Записатися
на пробний урок
Будь ласка зачекайте...
Ваша заявка прийнята! Менеджер навчального центру зв'яжеться з Вами найближчим часом.
Мессенджер:
Віртуальна АТС
Віртуальна АТС
Хочете, зателефонуємо
Вам за 30 секунд?
КНОПКА
ЗВ'ЯЗКУ