Классификация алгоритмов: различия между версиями
Перейти к навигации
Перейти к поиску
[досмотренная версия] | [выверенная версия] |
Frolov (обсуждение | вклад) м (→Задачи алгебры) |
Dolganov (обсуждение | вклад) (Перенаправление на Служебная:Pma tree) |
||
(не показано 10 промежуточных версий 4 участников) | |||
Строка 1: | Строка 1: | ||
+ | #redirect [[Special:Pma_tree]] | ||
__TOC__ | __TOC__ | ||
= Задачи алгебры = | = Задачи алгебры = | ||
Строка 57: | Строка 58: | ||
### {{level|Метод Гивенса (вращений) QR-разложения хессенберговой матрицы (вещественный вариант)}} | ### {{level|Метод Гивенса (вращений) QR-разложения хессенберговой матрицы (вещественный вариант)}} | ||
### {{level|Метод Хаусхолдера (отражений) QR-разложения хессенберговой матрицы (вещественный вариант)}} | ### {{level|Метод Хаусхолдера (отражений) QR-разложения хессенберговой матрицы (вещественный вариант)}} | ||
− | # {{level| | + | # {{level|Разложения, содержащие матрицу, подобную исходной}} |
− | ## {{level| | + | ## {{level|Разложения, содержащие хессенбергову матрицу, унитарно подобную исходной}} |
### {{level|Метод Хаусхолдера (отражений) приведения матрицы к хессенберговой (почти треугольной) форме}} | ### {{level|Метод Хаусхолдера (отражений) приведения матрицы к хессенберговой (почти треугольной) форме}} | ||
#### {{level|Классический точечный метод Хаусхолдера (отражений) приведения матрицы к хессенберговой (почти треугольной) форме}} | #### {{level|Классический точечный метод Хаусхолдера (отражений) приведения матрицы к хессенберговой (почти треугольной) форме}} | ||
### {{level|Метод Гивенса (вращений) приведения матрицы к хессенберговой (почти треугольной) форме}} | ### {{level|Метод Гивенса (вращений) приведения матрицы к хессенберговой (почти треугольной) форме}} | ||
#### {{level|Классический точечный метод Гивенса (вращений) приведения матрицы к хессенберговой (почти треугольной) форме}} | #### {{level|Классический точечный метод Гивенса (вращений) приведения матрицы к хессенберговой (почти треугольной) форме}} | ||
− | ## {{level| | + | ## {{level|Разложения, содержащие трёхдиагональную матрицу, унитарно подобную исходной}} |
### {{level|Метод Хаусхолдера (отражений) приведения к трёхдиагональному виду}} | ### {{level|Метод Хаусхолдера (отражений) приведения к трёхдиагональному виду}} | ||
#### {{level|Метод Хаусхолдера (отражений) для приведения симметричных матриц к трёхдиагональному виду}} | #### {{level|Метод Хаусхолдера (отражений) для приведения симметричных матриц к трёхдиагональному виду}} | ||
Строка 69: | Строка 70: | ||
### {{level|Метод Гивенса (вращений) приведения матрицы к трёхдиагональной форме}} | ### {{level|Метод Гивенса (вращений) приведения матрицы к трёхдиагональной форме}} | ||
## {{level|Спектральное разложение (нахождение собственных значений и векторов)}} | ## {{level|Спектральное разложение (нахождение собственных значений и векторов)}} | ||
− | # {{level| | + | # {{level|Разложения с использованием унитарных преобразований, не содержащие матриц, подобной исходной}} |
− | ## {{level| | + | ## {{level|Разложения на две унитарные и одну двухдиагональную матрицы}} |
### {{level|Метод Хаусхолдера (отражений) приведения матрицы к двухдиагональной форме}} | ### {{level|Метод Хаусхолдера (отражений) приведения матрицы к двухдиагональной форме}} | ||
### {{level|Метод Гивенса (вращений) приведения матрицы к двухдиагональной форме}} | ### {{level|Метод Гивенса (вращений) приведения матрицы к двухдиагональной форме}} | ||
− | ## {{level|Разложения на унитарные и | + | ## {{level|Разложения на две унитарные и одну диагональную матрицы}} |
### {{level|Сингулярное разложение (нахождение сингулярных значений и векторов)}} | ### {{level|Сингулярное разложение (нахождение сингулярных значений и векторов)}} | ||
#### {{level|Методы нахождения сингулярных чисел двухдиагональных матриц}} | #### {{level|Методы нахождения сингулярных чисел двухдиагональных матриц}} | ||
##### {{level|Алгоритм dqds нахождения сингулярных чисел двухдиагональной матрицы}} | ##### {{level|Алгоритм dqds нахождения сингулярных чисел двухдиагональной матрицы}} | ||
###### {{level|Итерация алгоритма dqds}} | ###### {{level|Итерация алгоритма dqds}} | ||
+ | |||
==Решение систем линейных уравнений== | ==Решение систем линейных уравнений== | ||
# {{level|Прямые методы решения СЛАУ}} | # {{level|Прямые методы решения СЛАУ}} | ||
Строка 83: | Строка 85: | ||
## {{level|Методы решения СЛАУ с матрицами специального вида}} | ## {{level|Методы решения СЛАУ с матрицами специального вида}} | ||
### {{level|Методы решения СЛАУ с треугольными матрицами}} | ### {{level|Методы решения СЛАУ с треугольными матрицами}} | ||
− | #### {{level|Прямая подстановка (вещественный вариант) | + | #### {{level|Прямая подстановка (вещественный вариант)}} |
− | #### {{level|Обратная подстановка (вещественный вариант) | + | #### {{level|Обратная подстановка (вещественный вариант)}} |
#### {{level|Методы решения СЛАУ с двудиагональными матрицами}} | #### {{level|Методы решения СЛАУ с двудиагональными матрицами}} | ||
##### {{level|Прямая и обратная подстановка в СЛАУ с двухдиагональной матрицей}} | ##### {{level|Прямая и обратная подстановка в СЛАУ с двухдиагональной матрицей}} | ||
Строка 129: | Строка 131: | ||
## {{level|Стабилизированный метод бисопряженных градиентов (BiCGStab)}} | ## {{level|Стабилизированный метод бисопряженных градиентов (BiCGStab)}} | ||
## {{level|Алгоритм_Качмажа}} | ## {{level|Алгоритм_Качмажа}} | ||
+ | |||
==Решения спектральных задач== | ==Решения спектральных задач== | ||
# {{level|Спектральное разложение (нахождение собственных значений и векторов)}} | # {{level|Спектральное разложение (нахождение собственных значений и векторов)}} | ||
Строка 157: | Строка 160: | ||
# {{level|Схема Горнера, вещественная версия, последовательный вариант}} | # {{level|Схема Горнера, вещественная версия, последовательный вариант}} | ||
− | =Алгоритмы на графах= | + | = Алгоритмы на списках и массивах = |
+ | ==Алгоритмы поиска== | ||
+ | # {{level|Линейный поиск - находит элемент в любом списке|Линейный поиск}}, <math>O(n)</math> | ||
+ | # {{level|Двоичный поиск - находит элемент в отсортированном списке|Двоичный поиск}}, <math>O(\log(n))</math> | ||
+ | ==Алгоритмы сортировки== | ||
+ | # {{level|Сортировка с помощью двоичного дерева}} | ||
+ | # {{level|Сортировка пузырьком}} | ||
+ | # {{level|Сортировка слиянием (последовательный и параллельный варианты)}} | ||
+ | ==Алгоритмы на графах== | ||
# Обход графа | # Обход графа | ||
## {{level|Поиск в ширину (BFS)}} | ## {{level|Поиск в ширину (BFS)}} | ||
## {{level|Поиск в глубину (DFS)}} | ## {{level|Поиск в глубину (DFS)}} | ||
− | # {{level|Поиск кратчайшего пути от одной вершины (SSSP)}} | + | # {{level|Поиск кратчайшего пути от одной вершины (SSSP)}} |
## {{level|Поиск в ширину (BFS)}} (для невзвешенных графов) | ## {{level|Поиск в ширину (BFS)}} (для невзвешенных графов) | ||
− | ## {{level|Алгоритм Дейкстры}} | + | ## {{level|Алгоритм Дейкстры}} |
− | ## {{level|Алгоритм Беллмана-Форда}} | + | ## {{level|Алгоритм Беллмана-Форда}} |
− | ## {{level|Алгоритм Δ-шагания}} | + | ## {{level|Алгоритм Δ-шагания}} |
− | # {{level|Поиск кратчайшего пути для всех пар вершин (APSP)}} | + | # {{level|Поиск кратчайшего пути для всех пар вершин (APSP)}} |
## {{level|Алгоритм Джонсона}} | ## {{level|Алгоритм Джонсона}} | ||
## {{level|Алгоритм Флойда-Уоршелла}} | ## {{level|Алгоритм Флойда-Уоршелла}} | ||
Строка 199: | Строка 210: | ||
## {{level|Алгоритм Гопкрофта-Карпа}} | ## {{level|Алгоритм Гопкрофта-Карпа}} | ||
# {{level|Вычисление betweenness centrality|Вычисление центральности вершин}} | # {{level|Вычисление betweenness centrality|Вычисление центральности вершин}} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
=Вычислительная геометрия= | =Вычислительная геометрия= | ||
# {{level|Поиск диаметра множества точек}} | # {{level|Поиск диаметра множества точек}} | ||
Строка 220: | Строка 223: | ||
# {{level|Трассировка лучей - рендеринг реалистичных изображений}} | # {{level|Трассировка лучей - рендеринг реалистичных изображений}} | ||
# {{level|Глобальное освещение - рассматривает прямое освещение и отражение от других объектов}} | # {{level|Глобальное освещение - рассматривает прямое освещение и отражение от других объектов}} | ||
− | + | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
=Исследование и моделирование компьютеров= | =Исследование и моделирование компьютеров= | ||
==Тесты производительности компьютеров== | ==Тесты производительности компьютеров== | ||
Строка 239: | Строка 233: | ||
## {{level|Двухкубитное преобразование вектора-состояния}} | ## {{level|Двухкубитное преобразование вектора-состояния}} | ||
## {{level|Моделирование квантового преобразования Фурье}} | ## {{level|Моделирование квантового преобразования Фурье}} | ||
+ | ==Алгоритмы машинного обучения== | ||
+ | # {{level|Алгоритм k средних (k-means)}} | ||
+ | ===Нейронные сети=== | ||
+ | # {{level|Распознавание образов}} | ||
+ | ## {{level|Распознавание текста}} | ||
+ | ## {{level|Распознавание речи}} | ||
+ | ## {{level|Распознавание лиц}} | ||
+ | ===Алгоритмы теории игр=== | ||
= Прикладные задачи из разных областей = | = Прикладные задачи из разных областей = | ||
Строка 251: | Строка 253: | ||
==Решение систем нелинейных уравнений== | ==Решение систем нелинейных уравнений== | ||
# {{level|Метод Ньютона для систем нелинейных уравнений}} | # {{level|Метод Ньютона для систем нелинейных уравнений}} | ||
− | |||
==Численные методы интегрирования== | ==Численные методы интегрирования== | ||
# {{level|Квадратурные формулы}} | # {{level|Квадратурные формулы}} | ||
Строка 261: | Строка 262: | ||
==Алгоритмы решения уравнений математической физики== | ==Алгоритмы решения уравнений математической физики== | ||
# {{level|Уравнение Пуассона, решение дискретным преобразованием Фурье}} | # {{level|Уравнение Пуассона, решение дискретным преобразованием Фурье}} | ||
+ | =Криптографические алгоритмы= | ||
+ | # {{level|Метод встречи посередине}} | ||
=Другие алгоритмы= | =Другие алгоритмы= | ||
Текущая версия на 22:20, 25 декабря 2018
Перенаправление на:
Содержание
- 1 Задачи алгебры
- 2 Алгоритмы на списках и массивах
- 3 Вычислительная геометрия
- 4 Исследование и моделирование компьютеров
- 5 Прикладные задачи из разных областей
- 6 Криптографические алгоритмы
- 7 Другие алгоритмы
1 Задачи алгебры
1.1 Матричные и векторные операции
1.1.1 Векторные операции
Суммирование сдваиванием
Равномерная норма вектора, вещественная версия, последовательно-параллельный вариант
Скалярное произведение векторов, вещественная версия, последовательно-параллельный вариант
Последовательно-параллельный метод суммирования
1.1.2 Умножения матриц на вектор
1.1.2.1 Умножения неособенных матриц на вектор
1.1.2.2 Умножения матриц специального вида на вектор
- Преобразование Фурье
1.1.3 Матричные операции
1.2 Разложения матриц
Треугольные разложения
Метод Гаусса (нахождение LU-разложения)
Метод Холецкого (нахождение симметричного треугольного разложения)
Разложение Холецкого (метод квадратного корня) базовый точечный вещественный вариант для плотной симметричной положительно-определённой матрицы
- Известные треугольные разложения для матриц специального вида
Унитарно-треугольные разложения
Разложения, содержащие матрицу, подобную исходной
Разложения, содержащие хессенбергову матрицу, унитарно подобную исходной
Разложения, содержащие трёхдиагональную матрицу, унитарно подобную исходной
Спектральное разложение (нахождение собственных значений и векторов)
- Разложения с использованием унитарных преобразований, не содержащие матриц, подобной исходной
1.3 Решение систем линейных уравнений
- Прямые методы решения СЛАУ
Linpack benchmark
- Методы решения СЛАУ с матрицами специального вида
- Методы решения СЛАУ с треугольными матрицами
Методы решения СЛАУ с трёхдиагональными матрицами
- Методы решения СЛАУ с блочно-треугольными матрицами
- Блочная прямая подстановка (вещественный вариант)
- Блочная обратная подстановка (вещественный вариант)
- Методы решения СЛАУ с блочно-двухдиагональными матрицами
- Методы решения СЛАУ с блочно-трёхдиагональными матрицами
- Методы, основанные на стандартном LU-разложении матрицы
- Другие методы
- Решения СЛАУ с матрицами специального вида, имеющими известные обратные матрицы
- Итерационные методы решения СЛАУ
1.4 Решения спектральных задач
Спектральное разложение (нахождение собственных значений и векторов)
- Частичная спектральная задача
Сингулярное разложение (нахождение сингулярных значений и векторов)
1.5 Алгебра многочленов
2 Алгоритмы на списках и массивах
2.1 Алгоритмы поиска
- Линейный поиск - находит элемент в любом списке, [math]O(n)[/math]
- Двоичный поиск - находит элемент в отсортированном списке, [math]O(\log(n))[/math]
2.2 Алгоритмы сортировки
- Сортировка с помощью двоичного дерева
- Сортировка пузырьком
- Сортировка слиянием (последовательный и параллельный варианты)
2.3 Алгоритмы на графах
- Обход графа
Поиск кратчайшего пути от одной вершины (SSSP)
Поиск в ширину (BFS) (для невзвешенных графов)
Алгоритм Дейкстры
Алгоритм Беллмана-Форда
Алгоритм Δ-шагания
Поиск кратчайшего пути для всех пар вершин (APSP)
Поиск транзитивного замыкания орграфа
Определение диаметра графа
Построение минимального остовного дерева (MST)
Поиск изоморфных подграфов
Связность в графах
Алгоритм Шилоаха-Вишкина поиска компонент связности
Система непересекающихся множеств
Алгоритм Тарьяна поиска компонент сильной связности
Алгоритм DCSC поиска компонент сильной связности
Алгоритм Тарьяна поиска компонент двусвязности
Алгоритм Тарьяна-Вишкина поиска компонент двусвязности
Алгоритм Тарьяна поиска «мостов» в графе
Определение вершинной связности графа
Алгоритм Габова определения рёберной связности графа
Поиск максимального потока в транспортной сети
Поиск потока минимальной стоимости в транспортной сети
Задача о назначениях
- Вычисление betweenness centrality
3 Вычислительная геометрия
- Поиск диаметра множества точек
- Построение выпуклой оболочки набора точек
- Триангуляция Делоне
- Диаграмма Вороного
- Принадлежность точки многоугольнику
- Пересечения выпуклых многоугольников
- Пересечение звёздных многоугольников
3.1 Компьютерная графика
- Алгоритмы построения отрезка - алгоритмы для аппроксимации отрезка на дискретной графической поверхности
- Алгоритм определения видимых частей трёхмерной сцены
- Трассировка лучей - рендеринг реалистичных изображений
- Глобальное освещение - рассматривает прямое освещение и отражение от других объектов
4 Исследование и моделирование компьютеров
4.1 Тесты производительности компьютеров
4.2 Алгоритмы моделирования квантовых систем
4.3 Алгоритмы машинного обучения
4.3.1 Нейронные сети
4.3.2 Алгоритмы теории игр
5 Прикладные задачи из разных областей
5.1 Алгоритмы оптимизации
- Линейное программирование
- Симплекс-метод
- Метод ветвей и границ
- Генетические алгоритмы
- Муравьиные алгоритмы
- Комбинированные алгоритмы
Стохастическое двойственное динамическое программирование (SDDP)
5.2 Решение систем нелинейных уравнений
5.3 Численные методы интегрирования
Квадратурные формулы
Квадратурные (кубатурные) методы численного интегрирования по отрезку (многомерному кубу)