嗨,我是一名學習過程中的Perl新手。 我有一個數組如何在perl中獲得數組中最大重複值的所有索引
@array = (10, 40, 59, 40, 90, 100, 30, 40, 100, 20,);
我想找到數組中的最大數,也想知道索引,其中,最大的號碼顯示在我的數組。
我做
my $maxValue = max @array;
print $maxValue; # displays the maximum number in the entire array
my ($index) = grep $array[$_] eq $maxValue , 0.. $#array;
print ($index); # this gives me the index of the maximum number which was found in the array.
我得到的輸出是100指數5
但實際上,100來了2倍在陣列中:一次是在指數6,再次在指數8.我代碼只能爲我提供第一個找到的最大值的索引。
我怎樣才能得到所有與他們有最大價值的指數?
分配grep來排列的結果而不是標量變量 – SAN