Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine
 
PerlMonks  

Re^3: Finding all Combinations

by roboticus (Chancellor)
on Jun 23, 2006 at 14:21 UTC ( [id://557196] : note . print w/replies, xml ) Need Help??

Help for this page

Select Code to Download


  1. or download this
    #------------------------------------------------------------
    # Return an iterator of all possible combinations (of all
    ...
        my ($by, $next) = (0, 1);
    
        return sub {
    
  2. or download this
            # We're done after we've returned a list of all symbols
            return () if @position == @list;
    
  3. or download this
            if ( $next ) {
                # We finished all combos of size $by, now do $by+1
                $by++;
    
  4. or download this
                # If new size is larger than list, we're done!
                return () if $by > @list;
    
  5. or download this
    
                # Start with leftmost $by symbols (except last,
    ...
            return @list[ @position ];
        }
    }