Сегодня существует множество различных алгоритмов. Некоторые из них часто используются в работе программиста. Например, сортировка товаров по цене или поиск статьи по названию. Некоторые алгоритмы очень специфичны и используются в сложных разработках и научных работах. Например, быстрое преобразование Фурье разбивает сигналы на частоты.

Хорошая новость в том, что вам не нужно запоминать ни один из них. Вы должны хорошо понимать основные алгоритмы, чтобы уверенно их использовать.

Вот список из 5 самых основных:

  1. Бинарный поиск, итеративная и рекурсивная реализация. Мой любимый.
  2. Пузырьковая сортировка. Он довольно медленный и не используется в реальных проектах, поэтому нужно просто в нем разобраться.
  3. Сортировка слиянием. Учит эффективной сравнительной сортировке с помощью рекурсии.
  4. Быстрая сортировка. Учит эффективной сортировке на месте.
  5. Поиск в глубину/в ширину.

Я рекомендую вам попробовать реализовать эти алгоритмы хотя бы один раз. Это поможет вам лучше понять их.

Что бы вы добавили к этому списку?