Ich suche nach dem skalaren Weg, alle Permutationen ohne Wiederholungen zu geben. Ich weiß, dass es auf dieser Seite schon einige Einträge gibt, aber sie scheinen ein etwas anderes Problem zu haben.
Ich suche nach allen Permutationen mit Wiederholungen. Zum Beispiel:
%Vor%Sollte ergeben:
%Vor%Es tut mir leid, wenn mein Problem bereits gelöst ist, aber ich konnte es nicht finden.
Vielen Dank im Voraus.
BEARBEITEN:
Mein eigener Ansatz (kompiliert nicht):
%Vor%sym ist ein Array-Member einer Klasse, die alle zu kombinierenden Symbole enthält.
Und wenn Sie die resultierenden Permutationen wollten:
%Vor% Sie können toList
weglassen, aber es ist da, damit Sie die Ergebnisse sehen können.
Es scheint, dass niemand die einfachste - oder zumindest am einfachsten zu lesende - Lösung vorgeschlagen hat. Es ist
%Vor%(Dies ist syntaktischer Zucker für die folgende Zusammenstellung von Karten:
%Vor%, auf den der Scala-Compiler den obigen for
-Ausdruck übersetzt.)
Einfach nur generische Antworten von @opyate und @monnef:
%Vor%Dies erzeugt die Permutation mit Wiederholung mit der Größe permutation_size:
%Vor%und
%Vor%Tags und Links scala combinatorics combinations repetition