在Prolog中附加列表

时间:2014-03-06 21:32:35

标签: prolog

Prolog SWI。

假设我有一个递归函数,可以在每次迭代中将X项添加到列表中。 看起来像:

func(...,BigList):-
     func2(...,CurrentList),
     BigList = [ CurrentList | Tail ],
     func(..., Tail).

我尝试删除不重要的部分,以便于阅读。

我会解释: 假设func将一些项添加到BigList。 在每次迭代中,func2初始化CurrentList,将其添加到BigList。

问题是BigList看起来像:

[[iter1item1,iter1item2,...,iter1itemX],[iter2item1,iter2item2,...,iter2itemX],..[iterXitem1,iterXitem2,...iterXitemX]]

而不是:

[iter1item1,iter1item2,...,iter1itemX,iter2item1,iter2item2,...,iter2itemX,..iterXitem1,iterXitem2,...iterXitemX]

我只是说它可能是一个简单的解决方案,但我是Prolog的新手,而且谷歌搜索的20分钟并没有真正帮助。我认识到这个问题,但不知道我怎么想编写代码使它能按照我想要的方式工作。

0 个答案:

没有答案