Iterative Lösung für: - Finden von String-Permutationen

ich lesediese einfache und elegante Python-Lösung zum Auffinden aller Permutationen eines bestimmten Strings. Es ist rekursiv. Basierend darauf habe ich versucht, eine iterative Lösung in Python zu implementieren.

Unten ist mein Code. Es funktioniert jedoch nur für 3 Zeichenfolgen :( Ich habe nicht versucht zu sehen, wie die Bedingung für die Rekursionsgrundbedingung und die Rekursionsbedingung in eine iterative (nicht rekursive) Lösung umgewandelt werden. (Entweder basierend auf diesem Algorithmus oder einer beliebigen andere)

def  permutations_iter(word):
while True:
    perms = []
    result = []

    char = word[0]
    new_word = word[1:]

    if len(new_word)==2: 
        perms = [new_word,''.join(reversed(new_word))]

    for perm in perms: 
        #insert the character into every possible location 
        for i in range(len(perm)+1): 
            result.append(perm[:i] + char + perm[i:]) 
    return result

    if len(new_word)==2:
        break;


   #example code to call this iterative function        
   print permutations_iter("LSE")   

Antworten auf die Frage(1)

Ihre Antwort auf die Frage