Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot

Re^2: min and mindex

by Anonymous Monk
on Nov 06, 2012 at 18:15 UTC ( #1002553=note: print w/ replies, xml ) Need Help??

in reply to Re: min and mindex
in thread min and mindex

I like this example. What would you do if the values in array1 were not unique?

Replies are listed 'Best First'.
Re^3: min and mindex
by Kenosis (Priest) on Nov 06, 2012 at 19:07 UTC

    Perhaps something like the following:

    use strict; use warnings; use List::Util 'min'; my %array1Hash; my @array1 = ( 5, 2, 1, 4, 1, 6, 7 ); my @array2 = ( "a", "b", "c", "d", "e", "f", "g" ); push @{ $array1Hash{ $array1[$_] } }, $_ for 0 .. $#array1; my %array2Hash = map { $_ => $array2[$_] } 0 .. $#array2; my $array1Min = min @array1; my $positions = join ', ', @{ $array1Hash{$array1Min} }; my $elements = join ', ', map $array2Hash{$_}, @{ $array1Hash{$array1 +Min} }; print 'The minimum value in @array1 is ', "$array1Min.\n"; print 'The position(s) of ', $array1Min, ' in @array1: ', "$positions. +\n"; print 'The element(s) in @array2 at position(s) ', "$positions: $eleme +nts.";


    The minimum value in @array1 is 1. The position(s) of 1 in @array1: 2, 4. The element(s) in @array2 at position(s) 2, 4: c, e.

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (6)
As of 2016-07-24 23:59 GMT
Find Nodes?
    Voting Booth?
    What is your favorite alternate name for a (specific) keyboard key?

    Results (221 votes). Check out past polls.