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 :-)

---

demerphq

demerphq

In Section
Meditations

Comment onRe^3: Finding the max()/min() (reduce)DownloadCode