小编Cas*_*per的帖子

我想出了在列表中测试等于a和b的代码,但无法理解底层的递归

s(A,A).
s(A,D):- l(A,B),s(B,C),r(C,D).

l([a|A],A).

r([b|A],A).
Run Code Online (Sandbox Code Playgroud)

prolog中的上述代码检查列表的给定输入是否等于a和b.

s([a,a,b,b],[]).
True.
Run Code Online (Sandbox Code Playgroud)

这涉及递归和差异列表.任何人都可以解释底层递归检查如何与b的步骤相等.

list prolog difference-lists

2
推荐指数
1
解决办法
101
查看次数

标签 统计

difference-lists ×1

list ×1

prolog ×1