【发布时间】:2013-11-23 16:06:03
【问题描述】:
我的序言代码有问题。我需要反转列表的所有原子元素。
示例:[1,2,[3,4]] -> [[4,3],2,1]
我的解决方案:
myReverse([], []).
myReverse([H|T], X) :- myReverse(T, RT), myAppend(RT, H, X).
但它只给我:[[3,4],2,1] 我想,如果它不是原子的,我需要使用 is_list 函数和递归调用列表......但我被卡住了......你们知道怎么写吗?
【问题讨论】:
-
spoj/3是什么?我对 SPhere Online Judge 很熟悉,但是一提到 Prolog,我就迷路了…… -
我已将其重命名为 myAppend,函数加入两个列表并将结果保存到 X。