Das Generieren einer einzelnen Liste, die alle möglichen eindeutigen Kombinationen aus einer beliebigen Anzahl von Listen mit jeweils unterschiedlicher Länge enthält, kann eine sein herausfordernde Aufgabe. In diesem Artikel wird eine Java-basierte Lösung unter Verwendung des Konzepts der Rekursion untersucht.
Problemstellung
Bei einer unbekannten Anzahl von Listen mit jeweils unbekannter Länge lautet das Ziel um eine einzelne Liste zu erstellen, die alle möglichen Kombinationen von Elementen aus diesen Listen enthält. Zum Beispiel, wenn die Listen
Die Lösung nutzt Rekursion, um alle möglichen Kombinationen zu generieren. Die Listen werden in einer Liste von Listen gespeichert und eine Ergebnisliste zur Aufnahme der Permutationen erstellt. Die Methode „generatePermutations“ verwendet die Liste der Listen, die Ergebnisliste, einen Tiefenparameter und eine Zeichenfolge, die die aktuelle Permutation darstellt, als Eingabe.X: [A, B, C] Y: [W, X, Y, Z]Methode „generatePermutations“
[AW, AX, AY, AZ, BW, BX, BY, BZ, CW, CX, CY, CZ]
Der erste Aufruf der Methode „generatePermutations“ setzt die Tiefe auf 0 und die aktuelle Zeichenfolge auf eine leere Zeichenfolge. Jeder rekursive Aufruf erhöht die Tiefe und verkettet das aktuelle Zeichen mit der aktuellen Zeichenfolge. Der Basisfall wird erreicht, wenn die Tiefe gleich der Anzahl der Listen ist, und an diesem Punkt wird die aktuelle Permutation zur Ergebnisliste hinzugefügt.
Durch die Verwendung von Rekursion erstellt die Methode „generatePermutations“ effektiv alle möglichen Kombinationen von Elemente aus den Eingabelisten und fügt sie der Ergebnisliste hinzu. Diese Lösung ist effizient und an jede beliebige Anzahl und Länge von Eingabelisten anpassbar.
Das obige ist der detaillierte Inhalt vonWie generiere ich mithilfe der Rekursion alle möglichen Kombinationen aus mehreren Listen in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!