Алгоритм: различия между версиями
KEV (обсуждение | вклад) м (Защищена страница «Алгоритм» ([edit=sysop] (бессрочно) [move=sysop] (бессрочно))) |
KVN (обсуждение | вклад) |
||
(не показано 6 промежуточных версий 2 участников) | |||
Строка 1: | Строка 1: | ||
'''Алгоритм''' ([[Algorithm|''Algorithm'']]) | '''Алгоритм''' ([[Algorithm|''Algorithm'']]) — точное предписание, которое задает вычислительный процесс | ||
(называемый в этом случае алгоритмическим), начинающийся с | (называемый в этом случае алгоритмическим), начинающийся с | ||
произвольного исходного данного (из некоторой совокупности | произвольного исходного данного (из некоторой совокупности | ||
возможных для данного | возможных для данного алгоритма исходных данных) и направленный | ||
на получение полностью определяемого этим исходным данным | на получение полностью определяемого этим исходным данным | ||
результата (Математическая энциклопедия, Т.1. С. 202). | результата (Математическая энциклопедия, Т.1. С. 202). | ||
Строка 14: | Строка 14: | ||
недетерминированные), распределенные и пр. | недетерминированные), распределенные и пр. | ||
Подробнее об алгоритмах см. | Подробнее об алгоритмах см. "Математическая | ||
энциклопедия | энциклопедия", статьи "Алгоритм", "Алгоритм локальный", | ||
Алгоритма сложность, Алгоритмическая проблема, Алгоритмическая | "Алгоритма сложность", "Алгоритмическая проблема", "Алгоритмическая | ||
сводимость, Алгоритмов теория | сводимость", "Алгоритмов теория" и др., а также литературу, | ||
указанную в конце каждой статьи. | указанную в конце каждой статьи. | ||
Строка 23: | Строка 23: | ||
понятия алгоритма; исходными данными для них служат | понятия алгоритма; исходными данными для них служат | ||
[[абстрактный граф|''абстрактные'']] или [[помеченный граф|''помеченные графы'']]. В процессе работы | [[абстрактный граф|''абстрактные'']] или [[помеченный граф|''помеченные графы'']]. В процессе работы | ||
алгоритма могут создаваться новые графы или | алгоритма могут создаваться новые [[граф|''графы'']] или | ||
может изменяться система | может изменяться система | ||
меток. Результатом работы алгоритма может быть граф, | меток. Результатом работы алгоритма может быть [[граф|''граф'']], | ||
помеченный граф или конструктивный объект иной природы, | [[помеченный граф|''помеченный граф'']] или конструктивный объект иной природы, | ||
например число или [[слово|''слово'']]. | например число или [[слово|''слово'']]. | ||
==См. также== | ==См. также== | ||
[ | * ''[[Венгерский алгоритм]]'', | ||
* ''[[Жадный алгоритм]]'', | |||
* ''[[Машина Тьюринга]]'', | |||
* ''[[Параллельный алгоритм]]'', | |||
* ''[[Последовательный алгоритм]]'', | |||
* ''[[Теория алгоритмов]]''. | |||
==Литература== | |||
* Успенский В.А., Семенов А.Л. Теория алгоритмов: основные понятия и приложения. — М.: Наука, 1987. | |||
* Ахо А., Хопкрофт Дж., Ульман Дж. Построение и анализ вычислительных алгоритмов. — М.: Мир, 1979. | |||
* Kasyanov V. N., Evstigneev V. A. Graph theory for programmers. Algorithms for processing trees, Kluwer Academic Publishers, 2000 | |||
* Касьянов В.Н. Оптимизирующие преобразования программ. — М.: Наука, 1988. | |||
* Касьянов В.Н., Евстигнеев В. А. Графы в программировании: обработка, визуализация и применение. — СПб.: БХВ-Петербург, 2003. | |||
* Касьянов В.Н., Касьянова Е.В. Теория вычислений. — Новосибирск: НГУ, 2018. | |||
* Рейнгольд Э., Нивергельт Ю., Део Н. Комбинаторные алгоритмы. Теория и практика. — М.: Мир, 1980. | |||
[ | [[Категория:Основные термины]] | ||
[[Категория:Теория автоматов]] | |||
[ |
Текущая версия от 20:29, 11 ноября 2024
Алгоритм (Algorithm) — точное предписание, которое задает вычислительный процесс (называемый в этом случае алгоритмическим), начинающийся с произвольного исходного данного (из некоторой совокупности возможных для данного алгоритма исходных данных) и направленный на получение полностью определяемого этим исходным данным результата (Математическая энциклопедия, Т.1. С. 202). Алгоритмический процесс есть процесс последовательного преобразования конструктивных объектов, проходящий дискретными шагами; каждый шаг состоит в смене одного конструктивного объекта другим. Алгоритмы характеризуются вычислительной сложностью и ёмкостной сложностью. По виду используемой вычислительной модели алгоритмы делятся на последовательные (или детерминированные), параллельные (или недетерминированные), распределенные и пр.
Подробнее об алгоритмах см. "Математическая энциклопедия", статьи "Алгоритм", "Алгоритм локальный", "Алгоритма сложность", "Алгоритмическая проблема", "Алгоритмическая сводимость", "Алгоритмов теория" и др., а также литературу, указанную в конце каждой статьи.
Алгоритмы на графах представляют собой частный случай общего понятия алгоритма; исходными данными для них служат абстрактные или помеченные графы. В процессе работы алгоритма могут создаваться новые графы или может изменяться система меток. Результатом работы алгоритма может быть граф, помеченный граф или конструктивный объект иной природы, например число или слово.
См. также
- Венгерский алгоритм,
- Жадный алгоритм,
- Машина Тьюринга,
- Параллельный алгоритм,
- Последовательный алгоритм,
- Теория алгоритмов.
Литература
- Успенский В.А., Семенов А.Л. Теория алгоритмов: основные понятия и приложения. — М.: Наука, 1987.
- Ахо А., Хопкрофт Дж., Ульман Дж. Построение и анализ вычислительных алгоритмов. — М.: Мир, 1979.
- Kasyanov V. N., Evstigneev V. A. Graph theory for programmers. Algorithms for processing trees, Kluwer Academic Publishers, 2000
- Касьянов В.Н. Оптимизирующие преобразования программ. — М.: Наука, 1988.
- Касьянов В.Н., Евстигнеев В. А. Графы в программировании: обработка, визуализация и применение. — СПб.: БХВ-Петербург, 2003.
- Касьянов В.Н., Касьянова Е.В. Теория вычислений. — Новосибирск: НГУ, 2018.
- Рейнгольд Э., Нивергельт Ю., Део Н. Комбинаторные алгоритмы. Теория и практика. — М.: Мир, 1980.