小编Tho*_*kes的帖子

如何在Prolog中获取所有连续的子列表/子集?

我想解决一个简单的问题,但是即使我尝试了许多不同的方法,也找不到解决方案。我正在使用SICStus Prolog(如果那很重要),并且我想获得一个列表的所有子列表/子集(我不知道哪个术语对这个正确),该列表包含连续的元素。例如,如果我有列表[1、2、3、4],将sl/2谓词称为sl([1, 2, 3, 4], R).,则预期结果为:

? - sl([1, 2, 3, 4], R).
R = [] ? ;
R = [1] ? ;
R = [1, 2] ? ;
R = [1, 2, 3] ? ;
R = [1, 2, 3, 4] ? ;
R = [2] ? ;
R = [2, 3] ? ;
R = [2, 3, 4] ? ;
R = [3] ? ;
R = [3, 4] ? ;
R = [4] …
Run Code Online (Sandbox Code Playgroud)

substring list prolog sublist

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

标签 统计

list ×1

prolog ×1

sublist ×1

substring ×1