Znajdź wszystkie unikalne podzbiory zestawu wartości

Mam problem z algorytmem. Próbuję znaleźć wszystkie unikalne podzbiory wartości z większego zestawu wartości.

Na przykład powiedz, że mam zestaw{1,3,7,9}. Jakiego algorytmu mogę użyć do znalezienia tych podzbiorów 3?

{1,3,7}
{1,3,9}
{1,7,9}
{3,7,9}

Podzbiory nie powinny się powtarzać, a kolejność jest nieważna, zestaw {1,2,3} jest taki sam jak zestaw {3,2,1} dla tych celów. Zachęca się do Psudokodu (lub zwykłego rodzaju).

Podejście brutalnej siły jest oczywiście możliwe, ale nie pożądane.

Na przykład taka metoda brutalnej siły byłaby następująca.

for i = 0 to size
  for j = i + 1 to size
    for k = j + 1 to size
      subset[] = {set[i],set[j],set[k]}

Niestety wymaga to dodatkowej pętli dla każdego elementu pożądanego w podzbiorze, co jest niepożądane, jeśli na przykład chcesz podzbiór 8 elementów.

questionAnswers(2)

yourAnswerToTheQuestion