gpt4 book ai didi

prolog - 在序言中不使用成员函数查找两个集合的交集

转载 作者:行者123 更新时间:2023-12-01 14:33:43 25 4
gpt4 key购买 nike

我正在开发一个接受两个集合并返回它们的交集的函数。但是,我不想在我的代码中使用成员函数。这是成员函数:

member( X, [ X | T ] ).
member( X, [ _ | T ] ) :- member( X, T ).

这是我目前所拥有的:

     set_int(_,[],_).   
set_int([H|T],[H|T1],[H|T2]) :-
set_int(T,T1,T2).
set_int(T,[X|T1],T2) :-
set_int(T,T1,T2).

请帮助我的逻辑。

最佳答案

如果您编写 set_int 来处理第一项的 3 种情况(空列表、单元素列表和比这更长的列表),您可以有效地使用 set_int( [ A], B, [A] ) 代替 member( A, B )

关于prolog - 在序言中不使用成员函数查找两个集合的交集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13943778/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com