我是prolog编程的新手,我可以问一些简单的问题.
我想将列表旋转到prolog中,如下所示:
rotatelist([1,2,3,4],R)
R=[2,3,4,1]
Run Code Online (Sandbox Code Playgroud)
我尝试了以下代码:
rotatelist([],[]).
rotatelist([H1|T1],[H2|T2]) :- rotatelist(H1,T2).
Run Code Online (Sandbox Code Playgroud)
为什么要使用递归..这不仅仅是将头移到尾部的情况吗?
rotatelist([H|T], R) :- append(T, [H], R).
Run Code Online (Sandbox Code Playgroud)