私は再帰を持っています:
list_to_set([],[]).
list_to_set([A|X],[A|Y]):-
list_to_set(X,Y),
\+member(A,Y).
list_to_set([A|X],Y):-
list_to_set(X,Y),
member(A,Y).
要素のリストをセットに変換します。たとえば、[1,1,2,3] -> [1,2,3]。クエリを入力するとlist_to_set([1,1,2,3],X).
、結果はX = (1,2,3)
であり、セットを見つけることの複雑さは ですO(n)
。;
これで、他に考えられる答えがないことを確認するために、alternative を入力できます。明らかに何もなく、スクリプトは を返しfalse
ます。私の質問は、その 2 回目のスクリプト実行の計算上の複雑さはどのくらいですか? またその理由は?