我想在序言中添加一個項目到列表的末尾,但它始終失敗。如何添加到序言列表的結尾
insertAtEnd(X,[ ],[X]).
insertAtEnd(X,[H|T],[H|Z]) :- insertAtEnd(X,T,Z).
letters([a,b,c]).
我不明白爲什麼這下面不起作用。
insertAtEnd(d,letters(Stored),letters(Stored)).
我也試圖保存這份名單中整個存儲着的變量,但我不知道上面是進行正確的方法。
我想在序言中添加一個項目到列表的末尾,但它始終失敗。如何添加到序言列表的結尾
insertAtEnd(X,[ ],[X]).
insertAtEnd(X,[H|T],[H|Z]) :- insertAtEnd(X,T,Z).
letters([a,b,c]).
我不明白爲什麼這下面不起作用。
insertAtEnd(d,letters(Stored),letters(Stored)).
我也試圖保存這份名單中整個存儲着的變量,但我不知道上面是進行正確的方法。
雖然這可能是解決問題的有價值的提示,但 的答案確實需要比這更詳細的一點。請 [編輯]解釋這將如何解決問題。 或者,請考慮將其寫爲註釋。 –
需要在列表末尾插入一個元素強烈建議您查看*差異列表*,這會給你O(1)插入。 –