Beefy Boxes and Bandwidth Generously Provided by pair Networks
more useful options
 
PerlMonks  

Re: Massive expansion of a hash of arrays?

by Anonymous Monk
on Jul 17, 2014 at 22:53 UTC ( [id://1094136]=note: print w/replies, xml ) Need Help??


in reply to Massive expansion of a hash of arrays?

If I understand you correctly, you want to produce all possible combinations of elements from your arrays. Maybe it would be easier to generate indexes for arrays separately. It's like an odometer:
0 0 0 1 0 0 2 0 0 3 0 0 0 1 0 0 2 0 0 3 0 0 0 1 1 0 1 2 0 1 3 0 1 0 1 1 0 2 1 (etc)
So, your odometer looks like this (at first):
my @odometer = (0, 0, 0);
And you use it like this:
while_odometer_has_not_run_to_completion... { $id2++; ( $data{$id}{$id2}{'key1'}, $data{$id}{$id2}{'key2'}, $data{$id}{$id2}{'key3'}, ) = ( $hash{$id}{'key1'}[ $odometer[0] ], $hash{$id}{'key2'}[ $odometer[1] ], $hash{$id}{'key3'}[ $odometer[2] ], ); next_odometer( \@odometer ); }
...or something like that...

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1094136]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others having a coffee break in the Monastery: (5)
As of 2024-04-16 20:20 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found