我想在有向图中打印节点的路径。此代码适用于边缘,但不适用于整个路径。当涉及到路径时,它返回 false。这是我的代码,但它仅针对边缘而不是整个路径运行。请帮帮我。
这是我的代码:
path(Node1, Node2, X) :-
edge(Node1, Node2),
append([Node1], [Node2], X).
path(Node1, Node2, X, N) :-
edge(Node1, SomeNode),
append([Node1], [SomeNode], X),
path(SomeNode, Node2, X, N),
append([], [Node2], X).
X
是一个列表。