Алгоритм: различия между версиями
KEV (обсуждение | вклад) Нет описания правки |
KEV (обсуждение | вклад) Нет описания правки |
||
(не показана 1 промежуточная версия этого же участника) | |||
Строка 1: | Строка 1: | ||
'''Алгоритм''' ([[Algorithm|''Algorithm'']]) | '''Алгоритм''' ([[Algorithm|''Algorithm'']]) — точное предписание, которое задает вычислительный процесс | ||
(называемый в этом случае алгоритмическим), начинающийся с | (называемый в этом случае алгоритмическим), начинающийся с | ||
произвольного исходного данного (из некоторой совокупности | произвольного исходного данного (из некоторой совокупности | ||
возможных для данного | возможных для данного алгоритма исходных данных) и направленный | ||
на получение полностью определяемого этим исходным данным | на получение полностью определяемого этим исходным данным | ||
результата (Математическая энциклопедия, Т.1. С. 202). | результата (Математическая энциклопедия, Т.1. С. 202). | ||
Строка 14: | Строка 14: | ||
недетерминированные), распределенные и пр. | недетерминированные), распределенные и пр. | ||
Подробнее об алгоритмах см. | Подробнее об алгоритмах см. "Математическая | ||
энциклопедия | энциклопедия", статьи "Алгоритм", "Алгоритм локальный", | ||
Алгоритма сложность, Алгоритмическая проблема, Алгоритмическая | "Алгоритма сложность", "Алгоритмическая проблема", "Алгоритмическая | ||
сводимость, Алгоритмов теория | сводимость", "Алгоритмов теория" и др., а также литературу, | ||
указанную в конце каждой статьи. | указанную в конце каждой статьи. | ||
Строка 23: | Строка 23: | ||
понятия алгоритма; исходными данными для них служат | понятия алгоритма; исходными данными для них служат | ||
[[абстрактный граф|''абстрактные'']] или [[помеченный граф|''помеченные графы'']]. В процессе работы | [[абстрактный граф|''абстрактные'']] или [[помеченный граф|''помеченные графы'']]. В процессе работы | ||
алгоритма могут создаваться новые графы или | алгоритма могут создаваться новые [[граф|''графы'']] или | ||
может изменяться система | может изменяться система | ||
меток. Результатом работы алгоритма может быть граф, | меток. Результатом работы алгоритма может быть [[граф|''граф'']], | ||
помеченный граф или конструктивный объект иной природы, | [[помеченный граф|''помеченный граф'']] или конструктивный объект иной природы, | ||
например число или [[слово|''слово'']]. | например число или [[слово|''слово'']]. | ||
==См. также== | ==См. также== | ||
* [[Венгерский алгоритм | * ''[[Венгерский алгоритм]]'', | ||
* [[Жадный алгоритм | * ''[[Жадный алгоритм]]'', | ||
* [[Машина Тьюринга | * ''[[Машина Тьюринга]]'', | ||
* [[Параллельный алгоритм | * ''[[Параллельный алгоритм]]'', | ||
* [[Последовательный алгоритм | * ''[[Последовательный алгоритм]]''. | ||
==Литература== | ==Литература== | ||
* Успенский В.А., Семенов А.Л. Теория алгоритмов: основные понятия и приложения. | * Успенский В.А., Семенов А.Л. Теория алгоритмов: основные понятия и приложения. — М.: Наука, 1987. | ||
* Ахо А., Хопкрофт Дж., Ульман Дж. Построение и анализ вычислительных алгоритмов. | * Ахо А., Хопкрофт Дж., Ульман Дж. Построение и анализ вычислительных алгоритмов. — М.: Мир, 1979. | ||
* Евстигнеев В.А., Касьянов В.Н. Теория графов: алгоритмы обработки деревьев. | * Евстигнеев В.А., Касьянов В.Н. Теория графов: алгоритмы обработки деревьев. — Новосибирск: Наука. Сиб. отд-ние, 1994. | ||
* Касьянов В.Н. Оптимизирующие преобразования программ. | * Касьянов В.Н. Оптимизирующие преобразования программ. — М.: Наука, 1988. | ||
* Рейнгольд Э., Нивергельт Ю., Део Н. Комбинаторные алгоритмы. Теория и практика. | * Рейнгольд Э., Нивергельт Ю., Део Н. Комбинаторные алгоритмы. Теория и практика. — М.: Мир, 1980. |
Текущая версия от 13:11, 17 ноября 2010
Алгоритм (Algorithm) — точное предписание, которое задает вычислительный процесс (называемый в этом случае алгоритмическим), начинающийся с произвольного исходного данного (из некоторой совокупности возможных для данного алгоритма исходных данных) и направленный на получение полностью определяемого этим исходным данным результата (Математическая энциклопедия, Т.1. С. 202). Алгоритмический процесс есть процесс последовательного преобразования конструктивных объектов, проходящий дискретными шагами; каждый шаг состоит в смене одного конструктивного объекта другим. Алгоритмы характеризуются вычислительной сложностью и ёмкостной сложностью. По виду используемой вычислительной модели алгоритмы делятся на последовательные (или детерминированные), параллельные (или недетерминированные), распределенные и пр.
Подробнее об алгоритмах см. "Математическая энциклопедия", статьи "Алгоритм", "Алгоритм локальный", "Алгоритма сложность", "Алгоритмическая проблема", "Алгоритмическая сводимость", "Алгоритмов теория" и др., а также литературу, указанную в конце каждой статьи.
Алгоритмы на графах представляют собой частный случай общего понятия алгоритма; исходными данными для них служат абстрактные или помеченные графы. В процессе работы алгоритма могут создаваться новые графы или может изменяться система меток. Результатом работы алгоритма может быть граф, помеченный граф или конструктивный объект иной природы, например число или слово.
См. также
- Венгерский алгоритм,
- Жадный алгоритм,
- Машина Тьюринга,
- Параллельный алгоритм,
- Последовательный алгоритм.
Литература
- Успенский В.А., Семенов А.Л. Теория алгоритмов: основные понятия и приложения. — М.: Наука, 1987.
- Ахо А., Хопкрофт Дж., Ульман Дж. Построение и анализ вычислительных алгоритмов. — М.: Мир, 1979.
- Евстигнеев В.А., Касьянов В.Н. Теория графов: алгоритмы обработки деревьев. — Новосибирск: Наука. Сиб. отд-ние, 1994.
- Касьянов В.Н. Оптимизирующие преобразования программ. — М.: Наука, 1988.
- Рейнгольд Э., Нивергельт Ю., Део Н. Комбинаторные алгоритмы. Теория и практика. — М.: Мир, 1980.