Wie hinzufügen am Ende der Liste in prolog

Ich versuche, fügen Sie ein Element am Ende einer Liste in prolog, aber es hält auf, zu scheitern.

insertAtEnd(X,[ ],[X]).
insertAtEnd(X,[H|T],[H|Z]) :- insertAtEnd(X,T,Z).    

letters([a,b,c]).

Verstehe ich nicht, warum das unten nicht funktioniert.

insertAtEnd(d,letters(Stored),letters(Stored)). 

Ich bin auch der Versuch zu speichern diese Liste in der variable Gespeichert, während, aber ich bin nicht sicher, ob die oben richtigen Weg zu gehen.

  • Die Notwendigkeit zum einfügen eines Elements am Ende einer Liste suggeriert, dass man sich in Differenz-Listen, die Ihnen die O(1) einfügen.
InformationsquelleAutor MeowMeow | 2012-10-31
Schreibe einen Kommentar