DigitableCourses
База знаний

Тема: Алгоритмы

30 материалов в этой теме.

Материалы

12 на странице
Статья

Практическая оптимизация: кэш, ветвления, профилирование, SIMD

Что происходит с алгоритмом, когда он встречается с реальным процессором: иерархия памяти, предсказание переходов, векторизация, профилирование и дисциплина измерений.

#алгоритмы#оптимизация#производительность
23 мин
Статья

Потоковые алгоритмы и алгоритмы внешней памяти

Что делать, когда данные не влезают в память: скетчи Count–Min и HyperLogLog, reservoir sampling, квантили, модель ввода-вывода Aggarwal–Vitter, внешняя сортировка, B- и …

#алгоритмы#потоковые алгоритмы#скетчи
26 мин
Статья

Поиск и бинарный поиск, в том числе по ответу

От линейного перебора до lower_bound, бинарного поиска по ответу, тернарного и экспоненциального поиска и кэш-дружественных раскладок вроде Eytzinger.

#алгоритмы#поиск#бинарный поиск
19 мин
Статья

Параллельные и распределённые алгоритмы, консенсус

Как считать сложность параллельных алгоритмов в модели работа/глубина, писать scan и параллельную сортировку, и почему в распределённой системе согласование упирается в …

#алгоритмы#параллельные вычисления#распределённые системы
17 мин
Статья

Остовные деревья и потоки в сетях

Два столпа сетевой оптимизации: минимальное остовное дерево через свойства разреза и цикла, и максимальный поток через остаточную сеть, теорему о минимальном разрезе и …

#алгоритмы#графы#потоки в сетях
25 мин
Статья

Локальный поиск: hill climbing, имитация отжига, tabu search

Как работают траекторные метаэвристики — от жадного восхождения к вершине до отжига и поиска с запретами — и почему в SBSE они часто обыгрывают генетические алгоритмы.

#sbse#оптимизация#метаэвристики
20 мин
Статья

Кратчайшие пути: Дейкстра, Беллман–Форд, Флойд–Уоршелл, A*

Одна операция релаксации порождает всё семейство алгоритмов кратчайших путей: разбираем условия корректности каждого, доказательства, реализации, потенциалы и …

#алгоритмы#графы#кратчайшие пути
24 мин
Статья

Жадные алгоритмы и когда они корректны

Как устроена жадность, почему она иногда даёт точный оптимум, а иногда катастрофу — аргумент обмена, greedy stays ahead, матроиды, классические задачи и приближённые …

#алгоритмы#жадные алгоритмы#оптимизация
20 мин
Статья

Динамическое программирование: от мемоизации до оптимизаций

Как перебор с экспоненциальной сложностью превращается в полиномиальный алгоритм: перекрывающиеся подзадачи, дисциплина проектирования состояния, классические семейства …

#алгоритмы#динамическое программирование#рекурсия
24 мин
Статья

Дерево отрезков и дерево Фенвика

Как отвечать на запросы к произвольным отрезкам массива за O(log n), когда массив всё время меняется: биты дерева Фенвика, каноническое разбиение дерева отрезков, …

#структуры данных#деревья#массивы
23 мин
Статья

Два указателя и скользящее окно

Как превратить квадратичный перебор пар и подотрезков в линейный проход: встречные указатели, монотонное окно, условие применимости, амортизационный анализ и …

#алгоритмы#два указателя#скользящее окно
21 мин