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

Теория: Введение

«Плохие программисты думают о коде. Хорошие программисты думают о структурах данных и их взаимосвязях», — Линус Торвальдс, создатель Linux.

Алгоритмы и структуры данных — основа Computer Science. Даже если вы не собираетесь писать алгоритмы или реализовывать структуры, их знание потребуется вам для понимания почему, как, и где использовать уже имеющиеся инструменты (библиотеки, фреймворки, базы данных). А хорошее владение этой темой открывает путь в мир сложных задач (поисковые системы, карты, компиляторы, нейронные сети, UI-фреймворки), и именно поэтому она должна входить в базовый набор знаний программиста.

В этом курсе рассмотрим следующие темы:

  • Алгоритмы поиска и сортировки.
  • Оценка сложности алгоритмов (сколько нужно сделать шагов и сколько памяти потребуется для решения задачи).
  • Реализация структур данных, стека, очереди, связного списка.
  • Жадные алгоритмы.
  • Динамическое программирование.

Зачем это нужно?

  • Получить необходимые знания перед изучением графов, деревьев, машинного обучения.
  • Для развития в качестве профессионального разработчика.
  • Для развития алгоритмического мышления.
  • Для подготовки к собеседованию.

Рекомендуемые программы

Завершено

0 / 9