相关疑难解决方法(0)

gnu Prolog powerset修改

所以我为powerset得到了这个:

powerset([], []).
powerset([H|T], P) :- powerset(T,P).
powerset([H|T], [H|P]) :- powerset(T,P).
Run Code Online (Sandbox Code Playgroud)

这会生成所有列表集.是否可以按列表顺序生成所有集合.

例:

List = [a,b,c]
Run Code Online (Sandbox Code Playgroud)

我想得到

[a],[a,b],[a,b,c],[b],[b,c],[c]
Run Code Online (Sandbox Code Playgroud)

请注意[a,c],此子集列表中没有,因为这些是从左侧开始向右侧的子集.

我尝试过使用append和recursion的组合,但这并不是我想要的.在这一点上有点难过.

谢谢.

substring list set prolog dcg

5
推荐指数
1
解决办法
3995
查看次数

标签 统计

dcg ×1

list ×1

prolog ×1

set ×1

substring ×1