1
在序言中,如何將X插入到排序列表中的正確位置?將X插入排序列表中的正確位置
我嘗試:
insert(X,[Y|Rest],[X,Y|Rest]):-
X @< Y;
insert(X,Rest,BiggerRest).
在序言中,如何將X插入到排序列表中的正確位置?將X插入排序列表中的正確位置
我嘗試:
insert(X,[Y|Rest],[X,Y|Rest]):-
X @< Y;
insert(X,Rest,BiggerRest).
你在正確的軌道上,但是您需要這三種情況。
insert(X, [], [X]).
insert(X, [Y|Rest], [X,Y|Rest]) :-
X @< Y, !.
insert(X, [Y|Rest0], [Y|Rest]) :-
insert(X, Rest0, Rest).
非常感謝!是否有可能使用內置的謂詞setof來執行相同的過程? –
@ General_9:我不確定你的意思。 –
不是內置的謂詞setof基本上構建了一個不包含重複項的有序列表。嘗試將一個元素插入到有序列表中時,是否有任何方法可以搭載該功能? –