【发布时间】:2015-10-16 22:32:31
【问题描述】:
我需要构造一个接收列表的谓词,检查谁是重复元素并返回其他列表。示例:
?- rep_elements([a,b,c,a,b,d], Xs).
Xs = [a,b].
我开始构建一个基本结构,但我现在不知道如何完成这个谓词,或者如果这是更好的方法:
exists(Elem, [Elem|_]).
exists(Elem, [H|T]) :-
exists(Elem, T).
rep_elements([], []).
rep_elements([H|T], [Y|Z]) :-
exists(H, T),
rep_elements(T, Z).
有什么建议吗?
【问题讨论】: