Beefy Boxes and Bandwidth Generously Provided by pair Networks
We don't bite newbies here... much
 
PerlMonks  

Re: recursively reduce an array

by johngg (Abbot)
on Nov 06, 2012 at 11:58 UTC ( #1002458=note: print w/ replies, xml ) Need Help??


in reply to recursively reduce an array

If you are sorting on values, do you mean something like this?

use strict; use warnings; use feature qw{ say }; sub groupsOf (&$@); my %hash = map { $_ => int rand 50 } q{a} .. q{z}; say qq{$_\n-----} for groupsOf { join qq{\n}, map { qq{$_ => $hash{ $_ }} } @_ } 10, sort { $hash{ $a } <=> $hash{ $b } } keys %hash; sub groupsOf (&$@) { my $rcToRun = shift; my $groupsOf = shift; my $rcDoIt; $rcDoIt = sub { $rcToRun->( map shift, 1 .. ( @_ < $groupsOf ? @_ : $groupsOf ) ), @_ ? &$rcDoIt : (); }; &$rcDoIt; }

The output.

$ ./spw1002389 n => 0 t => 2 w => 5 g => 8 d => 16 b => 16 c => 18 j => 20 o => 22 h => 23 ----- y => 25 k => 28 i => 29 q => 29 s => 30 x => 31 u => 34 l => 34 p => 34 m => 36 ----- f => 38 v => 38 r => 43 a => 43 e => 49 z => 49 ----- $

I hope this is heading in the right direction but please ask further if we have misunderstood your problem.

Cheers,

JohnGG


Comment on Re: recursively reduce an array
Select or Download Code

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (9)
As of 2015-07-03 13:42 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (53 votes), past polls