我从序言开始几周,但我看到了更深入的操作列表的递归谓词的构造。我的问题是:是否可以构建一个谓词,将给定列表拆分为给定数量的其他列表?
比如我想象的:
split([H|T], NumberLists, Lists)
-- 递归实现 --
?- split([1,2,3,4,5,6,7,8],2,Lists).
Lists = [[1,2,3,4],[5,6,7,8]].
?- split([1,2,3,4,5,6,7,8],4,Lists).
Lists = [[1,2],[3,4],[5,6],[7,8]].
有人可以给我一个实现的例子吗?
Thanks!