Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change

Re^3: Finding the max()/min() (reduce)

by demerphq (Chancellor)
on Nov 11, 2004 at 10:56 UTC ( #406983=note: print w/ replies, xml ) Need Help??

in reply to Re^2: Finding the max()/min()
in thread Finding the max()/min()

A moderate annoyance of List::Util::m(in|ax) is that they dont operate on tied values or situations where there is some form of indirection involved (like finding the key whose value in a hash is the lowest). Then List::Util::reduce() is your friend:

$min = reduce { ($a,$b)[$a < $b] } @list; $min_key = reduce { ($a,$b)[$x{$a} < $x{$b}] } keys %x;

Working out max is left as an exercise :-)


Comment on Re^3: Finding the max()/min() (reduce)
Download Code

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others avoiding work at the Monastery: (3)
As of 2015-11-27 17:03 GMT
Find Nodes?
    Voting Booth?

    What would be the most significant thing to happen if a rope (or wire) tied the Earth and the Moon together?

    Results (731 votes), past polls