Próbuję napisać funkcję, która zajmie tablicę na tablicę wejściową i zwrotną tablic, zawierającą wszystkie możliwe podzbiory tablicy wejściowej (zestaw mocy bez pustego elementu). Na przykład dla wejścia: [1, 2, 3]
wynikiem będzie [[1], [2], [3], [1, 2], [1, 3], [2, 3], [1, 2, 3]]
.Zestaw mocy tablicy w Delphi
Funkcja ta spełnia swoje zadanie w Pythonie:
def list_powerset(lst):
result = [[]]
for x in lst:
result += [subset + [x] for subset in result]
result.pop(0)
return result
Ale szukam wdrożenia jej w Delphi. Czy jest to możliwe do osiągnięcia w ten sposób, czy powinienem szukać czegoś innego?
pewno jest możliwe, aby to zrobić (ale kod prawdopodobnie nie będzie tak krótki w Delphi). –
Moja odpowiedź tutaj powinna pomóc: http://stackoverflow.com/questions/8316479/combination-without-repetition-of-n-elements-without-use-for-to-do –