相关疑难解决方法(0)

Prolog,在列表中找到最小值

简而言之:如何在列表中找到最小值?(感谢kaarel的建议)

很长的故事:

我在amzi prolog中创建了一个加权图并给出了2个节点,我能够检索路径列表.但是,我需要在此路径中找到最小值,但无法遍历列表来执行此操作.我可以请您就如何确定清单中的最小值寻求建议吗?

我的代码目前看起来像这样:

arc(1,2).
arc(2,3).
arc(3,4).
arc(3,5).
arc(3,6).
arc(2,5).
arc(5,6).
arc(2,6).

path(X,Z,A) :- 
 (arc(X,Y),path(Y,Z,A1),A is A1+1;arc(X,Z), A is 1).

因此,"键入findall(Z,路径(2,6,Z),L)." 在听众中允许我获得一个列表[3,2,2,1].我需要从这里检索最小值并将其乘以一个数量.有人可以建议如何检索最小值?谢谢!

traversal list prolog minimum

12
推荐指数
3
解决办法
4万
查看次数

标签 统计

list ×1

minimum ×1

prolog ×1

traversal ×1