AAcademyCloud
Курси/Середній

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

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

📚 10 модулів📝 10 уроків10 модулів

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

Модуль 1. Складність: O-нотація на практиці1 ур.
Модуль 2. Масиви, рядки, два вказівники1 ур.
  • 🔒Масиви, рядки, два вказівники
Модуль 3. Хеш-таблиці1 ур.
  • 🔒Хеш-таблиці
Модуль 4. Стек і черга1 ур.
  • 🔒Стек і черга
Модуль 5. Зв'язані списки1 ур.
  • 🔒Зв'язані списки
Модуль 6. Дерева й обходи1 ур.
  • 🔒Дерева й обходи
Модуль 7. Купа та черга з пріоритетом1 ур.
  • 🔒Купа та черга з пріоритетом
Модуль 8. Сортування й бінарний пошук1 ур.
  • 🔒Сортування й бінарний пошук
Модуль 9. Графи: BFS, DFS, найкоротший шлях1 ур.
  • 🔒Графи: BFS, DFS, найкоротший шлях
Модуль 10. Динамічне програмування й співбесіда1 ур.
  • 🔒Динамічне програмування й співбесіда

Про курс

Про курс

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

Чого ви навчитеся

  • O-нотація не як формула, а як інструмент оцінки
  • Хеш-таблиці, стеки, черги, зв'язані списки
  • Дерева, обходи, збалансовані структури
  • Купа й черга з пріоритетом
  • Сортування, бінарний пошук та його межі
  • Графи: BFS, DFS, найкоротший шлях
  • Динамічне програмування без магії
  • Стратегія розв'язання задач на співбесіді

Для кого

Для тих, хто вже пише код і хоче писати його свідомо. Приклади мовою, близькою до псевдокоду — застосовні в Java, Python, C#, JS.

Вимоги

Впевнене володіння будь-якою мовою: цикли, функції, масиви, класи.