Классификация алгоритмов: различия между версиями
Перейти к навигации
Перейти к поиску
| [досмотренная версия] | [досмотренная версия] |
Frolov (обсуждение | вклад) мНет описания правки |
Frolov (обсуждение | вклад) Нет описания правки |
||
| Строка 1: | Строка 1: | ||
__TOC__ | __TOC__ | ||
=Векторные операции= | = Задачи алгебры = | ||
==Векторные операции== | |||
# {{level|Суммирование сдваиванием}} | # {{level|Суммирование сдваиванием}} | ||
## {{level|Нахождение суммы элементов массива сдваиванием}} | ## {{level|Нахождение суммы элементов массива сдваиванием}} | ||
| Строка 7: | Строка 8: | ||
# {{level|Скалярное произведение векторов, вещественная версия, последовательно-параллельный вариант}} | # {{level|Скалярное произведение векторов, вещественная версия, последовательно-параллельный вариант}} | ||
# {{level|Последовательно-параллельный метод суммирования}} | # {{level|Последовательно-параллельный метод суммирования}} | ||
=Матрично-векторные операции= | ==Матрично-векторные операции== | ||
== Умножения неособенных матриц на вектор == | === Умножения неособенных матриц на вектор === | ||
# {{level|Умножение плотной неособенной матрицы на вектор (последовательный вещественный вариант)}} | # {{level|Умножение плотной неособенной матрицы на вектор (последовательный вещественный вариант)}} | ||
== Умножения матриц специального вида на вектор == | === Умножения матриц специального вида на вектор === | ||
# {{level|Преобразование Фурье}} | # {{level|Преобразование Фурье}} | ||
## {{level|Быстрое преобразование Фурье для составной размерности}} | ## {{level|Быстрое преобразование Фурье для составной размерности}} | ||
| Строка 19: | Строка 20: | ||
## {{level|Быстрое преобразование Фурье для простой размерности}} | ## {{level|Быстрое преобразование Фурье для простой размерности}} | ||
=Матричные операции= | ==Матричные операции== | ||
# {{level|Умножение плотных матриц}} | # {{level|Умножение плотных матриц}} | ||
## {{level|Перемножение плотных неособенных матриц (последовательный вещественный вариант)}} | ## {{level|Перемножение плотных неособенных матриц (последовательный вещественный вариант)}} | ||
## {{level|Метод Штрассена}} | ## {{level|Метод Штрассена}} | ||
=Разложения матриц= | ==Разложения матриц== | ||
{{level|Задача разложения матриц}} | {{level|Задача разложения матриц}} | ||
# {{level|Треугольные разложения}} | # {{level|Треугольные разложения}} | ||
| Строка 77: | Строка 78: | ||
##### {{level|Алгоритм dqds нахождения сингулярных чисел двухдиагональной матрицы}} | ##### {{level|Алгоритм dqds нахождения сингулярных чисел двухдиагональной матрицы}} | ||
###### {{level|Итерация алгоритма dqds}} | ###### {{level|Итерация алгоритма dqds}} | ||
=Решение систем линейных уравнений= | ==Решение систем линейных уравнений== | ||
# {{level|Прямые методы решения СЛАУ}} | # {{level|Прямые методы решения СЛАУ}} | ||
## {{level|Linpack benchmark}} | ## {{level|Linpack benchmark}} | ||
| Строка 128: | Строка 129: | ||
## {{level|Стабилизированный метод бисопряженных градиентов (BiCGStab)}} | ## {{level|Стабилизированный метод бисопряженных градиентов (BiCGStab)}} | ||
## {{level|Алгоритм_Качмажа}} | ## {{level|Алгоритм_Качмажа}} | ||
= | |||
==Решения спектральных задач== | |||
=Решения спектральных задач= | |||
# {{level|Спектральное разложение (нахождение собственных значений и векторов)}} | # {{level|Спектральное разложение (нахождение собственных значений и векторов)}} | ||
## {{level|QR-алгоритм}} | ## {{level|QR-алгоритм}} | ||
| Строка 155: | Строка 155: | ||
### {{level|Метод Якоби для нахождения сингулярных значений со специальным подбором вращений}} | ### {{level|Метод Якоби для нахождения сингулярных значений со специальным подбором вращений}} | ||
## {{level|QR-алгоритм в приложении к сингулярному разложению}} | ## {{level|QR-алгоритм в приложении к сингулярному разложению}} | ||
==Алгебра многочленов== | |||
# {{level|Схема Горнера, вещественная версия, последовательный вариант}} | |||
=Решение систем нелинейных уравнений= | |||
# {{level|Метод Ньютона для систем нелинейных уравнений}} | |||
=Тесты производительности компьютеров= | =Тесты производительности компьютеров= | ||
# {{level|High Performance Conjugate Gradient (HPCG) benchmark}} | # {{level|High Performance Conjugate Gradient (HPCG) benchmark}} | ||
# {{level|Linpack benchmark}} | # {{level|Linpack benchmark}} | ||
=Численные методы интегрирования= | =Численные методы интегрирования= | ||
# {{level|Квадратурные формулы}} | # {{level|Квадратурные формулы}} | ||
Версия от 13:54, 3 февраля 2018
Задачи алгебры
Векторные операции
Суммирование сдваиванием
Равномерная норма вектора, вещественная версия, последовательно-параллельный вариант
Скалярное произведение векторов, вещественная версия, последовательно-параллельный вариант
Последовательно-параллельный метод суммирования
Матрично-векторные операции
Умножения неособенных матриц на вектор
Умножения матриц специального вида на вектор
- Преобразование Фурье
Матричные операции
Разложения матриц
Треугольные разложения
Метод Гаусса (нахождение LU-разложения)
Метод Холецкого (нахождение симметричного треугольного разложения)
Разложение Холецкого (метод квадратного корня) базовый точечный вещественный вариант для плотной симметричной положительно-определённой матрицы
- Известные треугольные разложения для матриц специального вида
Унитарно-треугольные разложения
- Подобные разложения
- Подобные разложения на унитарные и хессенберговы матрицы
- Симметричные разложения на унитарные и трёхдиагональные матрицы
Спектральное разложение (нахождение собственных значений и векторов)
- Неподобные унитарные разложения
Решение систем линейных уравнений
- Прямые методы решения СЛАУ
Linpack benchmark- Методы решения СЛАУ с матрицами специального вида
- Методы решения СЛАУ с треугольными матрицами
Методы решения СЛАУ с трёхдиагональными матрицами
- Методы решения СЛАУ с блочно-треугольными матрицами
- Блочная прямая подстановка (вещественный вариант)
- Блочная обратная подстановка (вещественный вариант)
- Методы решения СЛАУ с блочно-двухдиагональными матрицами
- Методы решения СЛАУ с блочно-трёхдиагональными матрицами
- Методы, основанные на стандартном LU-разложении матрицы
- Другие методы
- Решения СЛАУ с матрицами специального вида, имеющими известные обратные матрицы
- Итерационные методы решения СЛАУ
Решения спектральных задач
Спектральное разложение (нахождение собственных значений и векторов)
- Частичная спектральная задача
Сингулярное разложение (нахождение сингулярных значений и векторов)
Алгебра многочленов
Решение систем нелинейных уравнений
Тесты производительности компьютеров
Численные методы интегрирования
Квадратурные формулы
Квадратурные (кубатурные) методы численного интегрирования по отрезку (многомерному кубу)
Алгоритмы на графах
- Обход графа
Поиск кратчайшего пути от одной вершины (SSSP)
Поиск в ширину (BFS) (для невзвешенных графов)
Алгоритм Дейкстры
Алгоритм Беллмана-Форда
Алгоритм Δ-шагания
Поиск кратчайшего пути для всех пар вершин (APSP)
Поиск транзитивного замыкания орграфа
Определение диаметра графа
Построение минимального остовного дерева (MST)
Поиск изоморфных подграфов
Связность в графах
Алгоритм Шилоаха-Вишкина поиска компонент связности
Система непересекающихся множеств
Алгоритм Тарьяна поиска компонент сильной связности
Алгоритм DCSC поиска компонент сильной связности
Алгоритм Тарьяна поиска компонент двусвязности
Алгоритм Тарьяна-Вишкина поиска компонент двусвязности
Алгоритм Тарьяна поиска «мостов» в графе
Определение вершинной связности графа
Алгоритм Габова определения рёберной связности графа
Поиск максимального потока в транспортной сети
Поиск потока минимальной стоимости в транспортной сети
Задача о назначениях
- Вычисление betweenness centrality
Алгоритмы на списках и массивах
Алгоритмы поиска
- Линейный поиск - находит элемент в любом списке, [math]\displaystyle{ O(n) }[/math]
- Двоичный поиск - находит элемент в отсортированном списке, [math]\displaystyle{ O(\log(n)) }[/math]
Алгоритмы сортировки
- Сортировка с помощью двоичного дерева
- Сортировка пузырьком
- Сортировка слиянием (последовательный и параллельный варианты)
Вычислительная геометрия
- Поиск диаметра множества точек
- Построение выпуклой оболочки набора точек
- Триангуляция Делоне
- Диаграмма Вороного
- Принадлежность точки многоугольнику
- Пересечения выпуклых многоугольников
- Пересечение звёздных многоугольников
Компьютерная графика
- Алгоритмы построения отрезка - алгоритмы для аппроксимации отрезка на дискретной графической поверхности
- Алгоритм определения видимых частей трёхмерной сцены
- Трассировка лучей - рендеринг реалистичных изображений
- Глобальное освещение - рассматривает прямое освещение и отражение от других объектов
Криптографические алгоритмы
Алгоритмы оптимизации
- Линейное программирование
- Симплекс-метод
- Метод ветвей и границ
- Генетические алгоритмы
- Муравьиные алгоритмы
- Комбинированные алгоритмы
Стохастическое двойственное динамическое программирование (SDDP)