在序言中,如何在排序列表中的正确位置插入 X?
我的尝试:
insert(X,[Y|Rest],[X,Y|Rest]):-
X @< Y;
insert(X,Rest,BiggerRest).
Run Code Online (Sandbox Code Playgroud)
你走在正确的轨道上,但你需要做到这三个案例。
insert(X, [], [X]).
insert(X, [Y|Rest], [X,Y|Rest]) :-
X @< Y, !.
insert(X, [Y|Rest0], [Y|Rest]) :-
insert(X, Rest0, Rest).
Run Code Online (Sandbox Code Playgroud)