请问:用perl语言如何提取一个矩阵中每行最大元素的序号?谢谢您

2025-03-29 10:59:20
推荐回答(1个)
回答1:

@matrix = (
  [1,2,3],
  [5,8,6],
  [9,7,4]); 
@max = max(\@matrix);
print "@max";
sub maxcol {
my $mat = shift;
my ($m, $idx) = ($mat->[0], 0);
for my $i(1..$#$mat){
($idx = $i, $m = $mat->[$i]) if ($m < $mat->[$i]);
}
$idx;
}
sub max {
my $mat = shift;
my @m;
for my $i(0..$#$mat) {
push @m, maxcol($mat->[$i]);
}
@m;
}