Ефективні рішення обчислювальних задач Студенти поглиблять базу Програмування на мові Python і" прокачають " алгоритмічне мислення. Курс вчить розуміти фундаментальні алгоритми і використовувати їх для вирішення практичних завдань. Знайомить з методами аналізу даних на Python і всіма необхідними бібліотеками.
чому ви навчитеся
- викладати ідеї у вигляді блок-схем, читати готові схеми і реалізовувати програми на їх основі;
- закріпити навички реалізації найпростіших алгоритмів з розгалуженнями, циклами, а також рекурсивних алгоритмів;
- познайомитися з класичними структурами даних, які застосовуються в програмуванні, і вміти використовувати їх реалізації на мові Python;
- освоїти модуль Collections і навчитися працювати з популярними структурами даних модуля;
- освоїти класичні алгоритми, які лежать в основі сучасних проектів будь-якого ступеня складності;
- дізнатися про алгоритмічну складність алгоритмів і навчитися оцінювати складність вашого алгоритму за допомогою вбудованих в Python інструментів;
- познайомитися з внутрішнім пристроєм інтерпретатора Python і зрозуміти структуру об'єктів всередині мови;
- навчитися працювати з деревами і хеш-таблицями. Писати алгоритми для роботи з ними.
- Урок 1. Введення в алгоритмізацію і реалізація простих алгоритмів на Python
Введення в алгоритмізацію. Вирішення практичних завдань. - Урок 2. Цикл. Рекурсія. Функція.
Цикли-багаторазове повторення однотипних дій. Рекурсивний перебір. Алгоритм Евкліда. Решето Ератосфена-алгоритм визначення простих чисел. Використання функцій. - Урок 3. Масив. Кортеж. Безліч. Список.
Поняття масиву, кортежу, множини і списків. Обробка послідовностей, одновимірних і двовимірних масивів. Робота з асоціативними масивами (таблицями даних). Двійковий (бінарний) пошук елемента в масиві. - Урок 4. Емпірична оцінка алгоритмів на Python
Вимірювання часу роботи з використанням timeit. Профайлер. - Урок 5. Колекція. Список. Черга. Словник.
Поняття колекції. Основні типи колекції. Стандартні методи роботи з колекціями. Приклади застосування колекцій для вирішення практичних завдань. - Урок 6. Робота з динамічною пам'яттю
Представлення в пам'яті колекцій. Управління пам'яттю. - Урок 7. Алгоритми сортування
Сортування бульбашкою. Швидке сортування (Quick sort). Сортування Шелла. Сортування складних структур за допомогою ключа. Зворотне сортування. Сортування за допомогою функції attrgetter. - Урок 8. Деревина. Хеш-функція
Двійкові дерева пошуку. Прохід по дереву. Хеш-функція.
https://privatelink.de/?https://geekbrains.ru/courses/264