ВУЗ:
Составители:
Рубрика:
55
2.18 Представление графов в языке Пролог
Для представления графов в языке Пролог можно использовать три
способа:
1. Использование факта языка Пролог для описания дуг или рёбер
графа.
2. Использование списка или структуры данных для объединения
двух списков: списка вершин и списка рёбер.
3. Использование списка списков: каждый подсписок в качестве
головы содержит вершину графа, а в качестве хвоста - список смежных
вершин.
Две самые распространённые операции, которые выполняются над
графами:
• Поиск пути между двумя вершинами;
• Поиск в графе подграфа, который обладает некоторыми
заданными свойствами.
Пример 67:
Определить наличие связи между вершинами графа, представленного
на рисунке:
Две вершины графа связаны,
если существует последовательность
ребер, ведущая из первой вершины во вторую. Используем для описания
структуры графа факты языка Пролог.
domains
top=symbol
predicates
edge (top, top)
/* аргументы обозначают имена вершин */
path( top,top)
/*Предикат connected(symbol, symbol) определяет отношение
связанности вершин.*/
clauses
edge (a, b).
edge (c, d).
edge (a, c).
edge (d, e).
edge (b, d).
edge (f, g).
a b
c d
e
f
g
Страницы
- « первая
- ‹ предыдущая
- …
- 53
- 54
- 55
- 56
- 57
- …
- следующая ›
- последняя »