WikiSort.ru - Не сортированное

ПОИСК ПО САЙТУ | о проекте

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

Битовая операция

Будем считать, что числа записаны в двоичной системе счисления, знаки которой и называются битами.

Определение. Запись знаков , сложение, вычитание и умножение двух битов назовём одной элементарной или битовой операцией.

Сложность вычисления (битовая)

Для оценки качества быстрого метода или алгоритма используется функция битовая сложность вычисления которая обозначается через

.

Функция сложности умножения имеет специальное обозначение

.

Оценка сложности наилучшего (в асимптотике) из известных в настоящее время алгоритмов умножения:

.

Быстрый алгоритм вычисления функции

Назовём алгоритм вычисления функции быстрым, если, предполагая наилучшую оценку для , для этого алгоритма битовая сложность вычисления имеет вид:

где есть константа.

История вопроса

Первые задачи по битовой сложности вычисления были поставлены А.Н. Колмогоровым[1], который при этом ссылался на работы Клода Шеннона и Норберта Винера, возбудившие его интерес к информатике.

Область быстрые алгоритмы появилась в 1960 году[2], когда был найден первый быстрый метод — метод умножения Карацубы. Впоследствии метод Карацубы был обобщён до парадигмы «Разделяй и властвуй», другими важными примерами которой являются метод двоичного разбиения[en], двоичный поиск, метод бисекции и др.

После метода Карацубы было построено много других быстрых методов, включая алгоритм Штрассена для быстрого умножения матриц [3] (обобщение идеи Карацубы на матрицы), метод умножения Шёнхаге — Штрассена[4][5], метод БВЕ[6] для вычисления простейших и высших трансцендентных функций. и т. д. Некоторые старые методы становятся быстрыми вычислительными методами, если использовать в них один из быстрых алгоритмов умножения, например, метод Ньютона для вычисления элементарных алгебраических функций и АГС метод Гаусса для вычисления простейших трансцендентных функций.

См. также

Примечания

  1. А. Н. Колмогоров,. {{{заглавие}}} // Теория информации и теория алгоритмов.. — Москва: Наука, 1987.
  2. Карацуба А. А. Сложность вычислений // Труды Математического института им. Стеклова. — 1995. Т. 211.
  3. Strassen V. Gaussian Elimination is not Optimal // Numer. MathSpringer Science+Business Media, 1969. — Vol. 13, Iss. 4. — P. 354–356. — ISSN 0029-599X; 0945-3245doi:10.1007/BF02165411
  4. Schönhage A., Strassen V. Schnelle Multiplikation großer Zahlen // Computing. — 1971. № 7. — P. 281—292.
  5. Schönhage A., Grotefeld A. F. W., Vetter E. Fast algorithms: A multitape Turing machine implementation. — Zürich: B. I. Wissenschaftsverlag, 1994. ISBN 3411168919.
  6. Карацуба Е. А. Быстрое вычисление трансцендентных функций // Проблемы передачи информации. — 1991. Т. 27, № 4.

Ссылки

Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".

Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.

Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .




Текст в блоке "Читать" взят с сайта "Википедия" и доступен по лицензии Creative Commons Attribution-ShareAlike; в отдельных случаях могут действовать дополнительные условия.

Другой контент может иметь иную лицензию. Перед использованием материалов сайта WikiSort.ru внимательно изучите правила лицензирования конкретных элементов наполнения сайта.

2019-2025
WikiSort.ru - проект по пересортировке и дополнению контента Википедии