Алгоритм: различия между версиями
KVN (обсуждение | вклад) Нет описания правки |
KVN (обсуждение | вклад) |
||
(не показана 1 промежуточная версия этого же участника) | |||
Строка 40: | Строка 40: | ||
* Успенский В.А., Семенов А.Л. Теория алгоритмов: основные понятия и приложения. — М.: Наука, 1987. | * Успенский В.А., Семенов А.Л. Теория алгоритмов: основные понятия и приложения. — М.: Наука, 1987. | ||
* Ахо А., Хопкрофт Дж., Ульман Дж. Построение и анализ вычислительных алгоритмов. — М.: Мир, 1979. | * Ахо А., Хопкрофт Дж., Ульман Дж. Построение и анализ вычислительных алгоритмов. — М.: Мир, 1979. | ||
* Kasyanov V. N., Evstigneev V. A. Graph theory for programmers. Algorithms for processing trees, Kluwer Academic Publishers, 2000 | * Kasyanov V. N., Evstigneev V. A. Graph theory for programmers. Algorithms for processing trees, Kluwer Academic Publishers, 2000 | ||
* Касьянов В.Н. Оптимизирующие преобразования программ. — М.: Наука, 1988. | * Касьянов В.Н. Оптимизирующие преобразования программ. — М.: Наука, 1988. | ||
* Касьянов В.Н., Евстигнеев В. А. Графы в программировании: обработка, визуализация и применение. — СПб.: БХВ-Петербург, 2003. | * Касьянов В.Н., Евстигнеев В. А. Графы в программировании: обработка, визуализация и применение. — СПб.: БХВ-Петербург, 2003. | ||
* Касьянов В.Н., Касьянова Е.В. Теория вычислений. — Новосибирск: НГУ, 2018. | * Касьянов В.Н., Касьянова Е.В. Теория вычислений. — Новосибирск: НГУ, 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.