Граф представляется в виде списка дуг. Например,
G = [ arca(a,b), arca(b,c), arca(b,d), arca(c,d)]
или
G = [ arca(s,t,3), arca(t,v,1), arca(v,u,2), arca(u,t,5), arca(t,u,2)]
Способ 3.
Граф представляется как один объект. Графу соответствует пара множеств - множество вершин и множество дуг. Для объединения множеств в пару будем применять функтор graph, а для записи дуги - arca. Например,
G = graph([a,b,c,d], [ arca(a,b), arca(b,d), arca(b,c), arca(c,d)])
Всюду, где это возможно, для простоты записи программы будем представлять графы способом 1 или способом 2.
Операции на графах
Типичными операциями на графе являются следующие:
- найти путь между двумя заданными вершинами графа;
- найти подграф, обладающий заданными свойствами (например, построить остовное дерево графа).