Daniel Thoma: Kombination von 5 versch. Zahlen

Beitrag lesen

Hallo seth,

Na, mit Perl bekomme ich meinen aber auch so kurz ;-)

  
#!/usr/bin/perl  
use strict;  
print join("\n", map {join(",", @{$_})} teilmengen(1..5)), "\n";  
sub teilmengen {  
  return @_ ? (map {$_, [$_[0], @{$_}]} teilmengen(@_[1..$#_])) : ([]);  
}  

es geht naemlich auch ohne rekursionen,

Ja, mein Algorithmus ist einfach der in Code gegossene Induktionsbeweis, warum das 2^n Teilmengen sind. Da bietet sich Rekursion zum schnellen Hinschreiben an.

kuerzer und fuer leute, die mit binaeren zahlen was anfangen koennen, auch leichter verstaendlich

als für Leute, die nichts mit binären Zahlen zu tun haben? Dem stimme ich uneingeschränkt zu ;-)

Einfach bis 2^n zu Zählen und die Teilmengen aus den Bitbelegungen zu bestimmen, ist natürlich trickreich.

Grüße

Daniel