Алгоритм · algorithm

ПрочееЧастота употребления: очень высокая· Сложность: 2/5· Актуальность: 5/5· Тренд: стабильно

Алгоритм — это конечная, однозначно определённая последовательность шагов, которая по заданным входным данным выдаёт результат за конечное число операций.

Подробно

Алгоритм формально описывает способ решения задачи: он принимает вход, выполняет детерминированный (или вероятностный) набор операций и возвращает выход, завершаясь за конечное время. Качество алгоритма оценивают по временной и пространственной сложности в нотации «О большое», что напрямую определяет, выдержит ли система рост нагрузки. Алгоритмы — базис программирования: сортировки, поиск, обход графов, хеширование, динамическое программирование, алгоритмы машинного обучения и криптографии. Применяются везде — от планировщика задач в ОС и индексов в базах данных до маршрутизации трафика и сжатия данных.

Примеры употребления

  • Бинарный поиск в отсортированном массиве: O(log n) вместо O(n) у линейного перебора
  • Array.prototype.sort() в JavaScript — реализация алгоритма сортировки Timsort под капотом
  • Обход графа в ширину (BFS) для поиска кратчайшего пути в невзвешенном графе
  • Оценка сложности на ревью: «этот вложенный цикл даёт O(n²), нужен хеш-сет»
#сложность #Big-O #структуры данных #основы CS

Источники