Алгоритм: различия между версиями

Материал из WikiGrapp
Перейти к навигации Перейти к поиску
м (Защищена страница «Алгоритм» ([edit=sysop] (бессрочно) [move=sysop] (бессрочно)))
 
(не показано 6 промежуточных версий 2 участников)
Строка 1: Строка 1:
'''Алгоритм''' ([[Algorithm|''Algorithm'']]) - точное предписание, которое задает вычислительный процесс
'''Алгоритм''' ([[Algorithm|''Algorithm'']]) точное предписание, которое задает вычислительный процесс
(называемый в этом случае алгоритмическим), начинающийся с
(называемый в этом случае алгоритмическим), начинающийся с
произвольного исходного данного (из некоторой совокупности
произвольного исходного данного (из некоторой совокупности
возможных для данного '''А.''' исходных данных) и направленный
возможных для данного алгоритма исходных данных) и направленный
на получение полностью определяемого этим исходным данным
на получение полностью определяемого этим исходным данным
результата (Математическая энциклопедия, Т.1.  С. 202).
результата (Математическая энциклопедия, Т.1.  С. 202).
Строка 14: Строка 14:
недетерминированные), распределенные и пр.
недетерминированные), распределенные и пр.


Подробнее об алгоритмах см. ''Математическая
Подробнее об алгоритмах см. "Математическая
энциклопедия'', статьи ''Алгоритм, Алгоритм локальный,
энциклопедия", статьи "Алгоритм", "Алгоритм локальный",
Алгоритма сложность, Алгоритмическая проблема, Алгоритмическая
"Алгоритма сложность", "Алгоритмическая проблема", "Алгоритмическая
сводимость, Алгоритмов теория'' и др., а также литературу,
сводимость", "Алгоритмов теория" и др., а также литературу,
указанную в конце каждой статьи.
указанную в конце каждой статьи.


Строка 23: Строка 23:
понятия алгоритма; исходными данными для них служат  
понятия алгоритма; исходными данными для них служат  
[[абстрактный граф|''абстрактные'']] или [[помеченный граф|''помеченные графы'']]. В процессе работы
[[абстрактный граф|''абстрактные'']] или [[помеченный граф|''помеченные графы'']]. В процессе работы
алгоритма могут создаваться новые графы или
алгоритма могут создаваться новые [[граф|''графы'']] или
может изменяться система
может изменяться система
меток. Результатом работы алгоритма может быть граф,
меток. Результатом работы алгоритма может быть [[граф|''граф'']],
помеченный граф или конструктивный объект иной природы,
[[помеченный граф|''помеченный граф'']] или конструктивный объект иной природы,
например число или [[слово|''слово'']].
например число или [[слово|''слово'']].


==См. также==  
==См. также==  
[[Венгерский алгоритм|''Венгерский алгоритм'']], [[Жадный алгоритм|''Жадный алгоритм'']], [[Машина Тьюринга|''Машина Тьюринга'']],
[[Параллельный алгоритм|''Параллельный алгоритм'']], [[Последовательный алгоритм|''Последовательный алгоритм'']].
==Литература==
[Успенский-Семенов],


[Ахо-Хопкрофт-Ульман],  
* ''[[Венгерский алгоритм]]'',
* ''[[Жадный алгоритм]]'',
* ''[[Машина Тьюринга]]'',
* ''[[Параллельный алгоритм]]'',  
* ''[[Последовательный алгоритм]]'',
* ''[[Теория алгоритмов]]''.
==Литература==


[Евстигнеев-Касьянов/94],
* Успенский В.А., Семенов А.Л. Теория алгоритмов: основные понятия и приложения.  — М.: Наука, 1987.
* Ахо А., Хопкрофт Дж., Ульман Дж. Построение и анализ вычислительных алгоритмов. —  М.: Мир, 1979.
* Kasyanov V. N., Evstigneev V. A. Graph theory for programmers. Algorithms for processing trees, Kluwer Academic Publishers, 2000
* Касьянов В.Н. Оптимизирующие преобразования программ. — М.: Наука, 1988.
* Касьянов В.Н., Евстигнеев В. А. Графы в программировании: обработка, визуализация и применение. — СПб.: БХВ-Петербург, 2003.
* Касьянов В.Н., Касьянова Е.В. Теория вычислений. — Новосибирск: НГУ, 2018.
* Рейнгольд Э., Нивергельт Ю., Део Н. Комбинаторные алгоритмы. Теория и практика. — М.: Мир, 1980.


[Касьянов/88],
[[Категория:Основные термины]]
 
[[Категория:Теория автоматов]]
[Рейнгольд-Нивергельт-Део]

Текущая версия от 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.