Permutation von Listen mit speziellen Bedingungen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
profipimp
User
Beiträge: 7
Registriert: Donnerstag 13. April 2006, 13:25
Wohnort: Mannhighm

Hallo, ich habe folgendes Problem: Ich muss alle Permutationen von 5 Items einer Liste mit insgesamt 7 items erstellen. Leider kann ich nur auf eine rekursive Lösung kommen, die immer von 7 Items ausgeht. Vielleicht kann ja jemand schnell mal drüberschauen. Mein Kopf dampft nämlich sehr :(

Code: Alles auswählen

def calculateAllPerms(valueList):
    if len(valueList) <=1:
        yield valueList
    else:
        for perm in calculateAllPerms(valueList[1:]):
            for i in range(len(perm)+1):
                yield perm[:i] + valueList[0:1] + perm[i:]
Kurz? Lang ist genauso...
woolfy
User
Beiträge: 19
Registriert: Montag 6. Februar 2006, 15:14
Wohnort: Stuttgart

Hallo profipimp,

versteh ich nicht, ...
...möchtest du alle Permutationen einer Liste mit 7 Elementen und 2 variablen Fixpunkten haben?

Am Beispiel einer Liste mit 4 Elementen und einem Fixpunkt:
[1, 2, 3, 4]
[2, 1, 3, 4]
[2, 4, 3, 1]
[1, 4, 3, 2]
[4, 1, 3, 2]
[4, 2, 3, 1]


Gruß
Jens
Antworten