Ich versuche, eine Common Lisp-Funktion zu schreiben, die mir alle möglichen Permutationen einer Liste gibt, wobei jedes Element nur einmal verwendet wird. Zum Beispiel gibt die Liste '(1 2 3) die Ausgabe ((1 2 3) (1 3 2) (2 1 3) (2 3 1) (3 1 2) (3 2 1)).Wie bekomme ich alle möglichen Permutationen einer Liste mit Common Lisp?
Ich habe schon etwas geschrieben, das funktioniert, aber es ist klobig, es funktioniert nicht immer und ich verstehe es nicht einmal wirklich. Ich frage nicht nach Code, sondern vielleicht nach einer Anleitung, wie ich darüber nachdenken soll. Ich weiß nicht viel über das Schreiben von Algorithmen.
Danke, Jason
Normalerweise ist es eine gute Idee, den Code, den Sie bisher geschrieben haben, zu posten. So können wir sehen, wie Sie denken ... –
Wenn dies Hausaufgaben sind, bitte markieren Sie es als solches. –
Das sind keine Hausaufgaben. Ich habe absichtlich den Code weggelassen, den ich bisher habe. Ich möchte die Antworten nicht mit meiner fehlerhaften Idee beschönigen. – Jason