我是prolog新手,我正试图平铺一个列表,就像这样:
X = [[[0,0,1],[1,0,2]],[[0,1,3],[0,2,2]],[[0,3,5],[0,4,4]],[[0,5,4],[0,6,5]]]
期望的输出是:
X = [[0,0,1],[1,0,2],[0,1,3],[0,2,2],[0,3,5],[0,4,4],[0,5,4],[0,6,5]]
我该怎么做?
使用递归:-)
myflatten([], []).
myflatten([[A, B]|T], [A|[B|FlattenedT]]) :- myflatten(T, FlattenedT).
然后查询:
?myflatten([[[0, 0, 1],[1 0 2]],[[0, 1, 3],[0 2 2]],[[0、3、5],[0,4,4]],[[0、5、4],[5]0,6日]],X)。