【发布时间】:2014-12-03 09:04:47
【问题描述】:
例如:如果给了我两个列表 [1,4,3,2,5,6] 和 [1,2,3],则最终列表应该是 [4,5,6]。
即Del([1,4,3,2,5,6], [1,2,3], Result).
----应该输出Result=[4,5,6]。
我尝试过这样的事情:
delete1(A, [A|B], B).
delete1(A, [B, C|D], [B|E]) :- delete1(A, [C|D], E).
但我得到的输出是删除作为参数而不是列表传递的元素。
输出:
delete1(a,[a,b,c,d],Res).
(0) Call: delete1(a,[a,b,c,d],_h210) ?
(0) Exit: delete1(a,[a,b,c,d],[b,c,d]) ?
Res = [b,c,d]
谁能帮我解决这个问题?
【问题讨论】:
-
纯版本见this answer。