common_suffix/4 序言

Posted

技术标签:

【中文标题】common_suffix/4 序言【英文标题】:common_suffix/4 Prolog 【发布时间】:2021-06-30 14:05:27 【问题描述】:

我想在prolog中写一个谓词来查找两个列表的共同后缀,并返回共同后缀开始的位置,从列表的末尾开始计数。此外,给定公共后缀,单击更多应返回较低长度的公共后缀,如以下示例中所述。本练习唯一可用的嵌入式函数应该是长度、成员,当然还有附加。

1) ?- common_suffix([1, b, c], [a, b, c], Suffix, Pos).
Suffix = [b, c]
Pos = 2
Yes
Suffix = [c]
Pos = 1
Yes
Suffix = []
Pos = 0
Yes

2) ?- common_suffix([a, b, c], [a, b, c], Suffix, Pos).
Suffix = [a, b, c]
Pos = 3
Yes
Suffix = [b, c]
Pos = 2
Yes
Suffix = [c]
Pos = 1
Yes
Suffix = []
Pos = 0
Yes

3) ?- common_suffix([1, b, 3], [a, b, c], Suffix, Pos).
Suffix = []
Pos = 0
Yes 

【问题讨论】:

所以,你发布了你的作业。也请向我们展示您的尝试。 【参考方案1】:

common_suffix(L1,L2,Suffix,Pos):- 附加(,后缀,L1), 附加(,后缀,L2), 长度(后缀,位置)。

好的,我试过了,它似乎有效。

【讨论】:

以上是关于common_suffix/4 序言的主要内容,如果未能解决你的问题,请参考以下文章

物理·序言

序言,复制列表

序言问题中不允许内容

序言中不能有内容

补图 - 序言

微服务架构设计实践系列之一:序言