Re: efficient max() function from sort
[email protected] ("Li, Jialin")
| Newsgroups | perl.beginners |
|---|---|
| Message-ID | <[email protected]> |
On Wed, May 28, 2008 at 9:17 AM, Ramprasad A Padmanabhan <[email protected]> wrote: > > I use sort to give the max of an array something like this > > ----- > my @z = qw(12 24 67 89 77 91 44 5 10); > my $max = ((reverse sort{$a <=> $b} (@z))[0]); > print "MAX = $max\n"; > ----------- > > but when I am interested only in a single max value, I need not sort the > entire array > Is there a more efficient alternative to this > > PS: Posts via nntp to nntp.perl.org appear after a long time > Is there a more preferred way of posting here > > > Thanks > Ram > > > > -- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > http://learn.perl.org/ > just compare one by one to find the max my @z = qw(12 24 67 89 77 91 44 5 10); my $max = $z[0]; map { $max = $_ if ($max < $_); } @z; print $max; or use List::Util which provides max subroutine