top of page

про курс

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

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

навчальний план
буде гаряче

  • Асимптотика ітеративних та рекурсивних програм

  • Ймовірнісний аналіз алгоритмів

analysis of algorithms

  • Клас задач, що покриваються методом двох вказівників

  • Префікс-суми на масиві та матриці

two pointers technique

  • Коренева ідея як техніка до пришвидшення коду

  • Jump search та Galloping search

  • Binary search в продакшн системах та на невідсортованих даних

  • Нижня оцінка на задачу пошуку

searching and sqrt decomposition

  • External sort для сортування гігабайтів даних

  • Задача Convex Hull або як оптимально оточити русню стіною

  • Quick sort та Quick select. Задача Dutch National Flag

  • Звязок між Selection sort та Heap sort

sorting and "divide&conquer"

  • Find most similar websites

  • Як реалізувати підтримку TTL в Redis

  • Top-K найпопулярніших елементів

heap and linear data structures

  • LRU cache та оптимальний cache eviction алгоритм

  • Huffman coding або як стискати дані?

  • Задача планування розпорядку подій

  • Minimum spanning tree

greedy algorithms

  • Комбінаторні об'єкти та їх перебір

  • Backtracking або як заповнити Sudoku

  • Хвостова рекурсія. Tail call оптимізація

recursion

  • Reservoir sampling на MapReduce

  • Як компактно представити хеш-таблицю в пам'яті

  • Вирішення колізій. Chaining та Linear Probing

  • Bloom filter або що роботи якщо дані не влазять в пам'ять?

probabilistic algorithms and data structures

  • The algorithm behind spell checkers

  • Як виграти в Blackjack та "красиво" зменшити розмір картинки

  • Knapsack та оптимальний шлях робота в лабіринті

dynamic programming

  • Розберемо DFS та BFS і реалізуємо Web Crawler та PSTree Linu

  • Circular dependencies errors і при чому тут Topological sort

  • Знаходження найкоротших шляхів: Dijkstra, Bellman-Ford

  • Binary search tree та як їх легко балансувати? AVL, Treap

graphs and trees

читає

_іван.jpg

Іван Петрушенко

Engineering Lead y Squad, Founder в CS Osvita. 
Former: Dell Software Engineer, Fiverr Senior Software Engineer, Ring Machine Learning Engineer.

algorithms for interview

Solve problems 
at the speed of thought.

{format}

старт:

{3 місяці | 27 занять}

{3 місяці}

{12 000₴/міс}

bottom of page