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

Big O, деревья, графы и всё, что спрашивают на собеседованиях

Уроки курса (8)

  1. Big O: оцениваем скорость алгоритмов - Нотация Big O, временная и пространственная сложность, как оценивать код на глаз
  2. Слайсы изнутри: память, capacity и подводные камни - Как устроены слайсы в Go на уровне памяти, почему append может сломать всё и как этого избежать
  3. Map изнутри: хеш-таблицы в Go - Как устроены map в Go, что такое хеш-коллизии и когда map лучше слайса
  4. Стек и очередь: два базовых контейнера - Реализация стека и очереди на слайсах, проверка скобок, BFS
  5. Связный список: когда слайс не подходит - Односвязный и двусвязный списки, container/list, сравнение со слайсами
  6. Бинарное дерево поиска - BST: вставка, поиск, удаление, обходы дерева и балансировка
  7. Графы: BFS, DFS и топологическая сортировка - Представление графов, обход в ширину и глубину, поиск кратчайшего пути, порядок зависимостей
  8. Сортировка и бинарный поиск - sort.Slice, sort.Interface, бинарный поиск, сравнение алгоритмов сортировки