Ich versuche, eine Funktion zu schreiben, die ein Array am Eingang nimmt und Matrix von Arrays zurückgibt, die alle möglichen Untergruppen von Eingangsarray enthält (Leistungsset ohne leeres Element). Zum Beispiel für die Eingabe: [1, 2, 3]
wäre das Ergebnis [[1], [2], [3], [1, 2], [1, 3], [2, 3], [1, 2, 3]]
.Leistungsset eines Arrays in Delphi
Diese Funktion macht die Arbeit in Python:
def list_powerset(lst):
result = [[]]
for x in lst:
result += [subset + [x] for subset in result]
result.pop(0)
return result
Aber ich bin für die Umsetzung der in Delphi suchen. Ist dies möglich, oder sollte ich nach etwas anderem suchen?
Es ist durchaus möglich, dies zu tun (aber der Code wird wahrscheinlich nicht, dass kurz in Delphi sein). –
Meine Antwort hier sollte helfen: http://stackoverflow.com/questions/8316479/combination-without-repetition-of-n-elements-without-use-for-to- –