Berechnung aller möglichen Kombinationen einer Saite mit einem Twist

Ich versuche, einem Benutzer die Eingabe von Text in ein Textfeld zu erlauben und das Programm alle möglichen Kombinationen davon generieren zu lassen, außer mit mindestens 3 Zeichen und maximal 6. Ich benötige keine nutzlosen Wörter wie 'as'. 'a', 'i', 'to' usw., die mein Array überladen. Ich werde auch jede Kombination mit einem Wörterbuch vergleichen, um sicherzustellen, dass es sich um ein echtes Wort handelt.

Ich habe das Wörterbuch vollständig (sorgfältig erstellt,Hier ist ein Link dazu im Gegenzug (ACHTUNG: gigantische Ladezeit (für mich)!)

Wie könnte ich generieren, wenn der Benutzer 'ABCDEF' eingibt (in keiner bestimmten Reihenfolge), zum Beispiel:

'ABC'
'BAC'
'CAB'
...
'ABD'
'ABE'
'ABF'

etc ... JEDE mögliche Kombination, egal in welcher Reihenfolge? Ich verstehe, dass es eine lächerliche Menge dieser Kombinationen gibt, aber sie müssen nur einmal berechnet werden, deshalb mache ich mir darüber keine allzu großen Sorgen.

Ich habe Codebeispiele gefunden, um rekursiv Kombinationen (keine Permutationen, die ich nicht benötige) der Zeichenfolge mit fester Breite (ABCDEF, ABCDFE ... ACDBFE usw.) zu finden. Sie tun nicht das, was ich brauche, und ich habe nicht die geringste Ahnung, wo ich überhaupt mit diesem Projekt anfangen soll.

Dies ist keine Hausaufgabe, sondern ein persönliches Projekt von mir, das mein Leben aufgrund eines so einfachen Problems in die Hand nimmt ... Ich kann nicht glauben, dass ich das nicht herausfinden kann!

Antworten auf die Frage(4)

Ihre Antwort auf die Frage