У меня есть 2D-массивы (@AoA), которые содержат ссылки на другие массивы строк. Размер этого @AoA отличается каждый раз. Я хотел бы сравнить каждый из этих массивов строк друг с другом.
Для сравнения: первый массив строк друг с другом, я могу использовать что-то вроде этого:сравнить несколько массивов в perl
for (my $i=0; $i < $#AoA; $i++) {
my $lcm = List::Compare->new($aAoA[$i], $AoA[$i+1]);
my @intersection = $lcm->get_intersection;
if (@intersection) {
#some code here
}
Но что лучший способ для сравнения каждого массива друг с другом? Я хотел бы результаты, как это:
Arr1 Arr2 …. ArrN
Arr1 x 1 match 3 matches 0 matches
Arr2 x N matches 3 matches
…. x 1 match
ArrN x
Если списки сортируются вы, вероятно, может сделать это гораздо более эффективно. Они? – neuhaus
@ neuhasus Нет, они не отсортированы. Порядок элементов в каждом списке содержит определенную информацию. –
Вы можете злоупотреблять Test :: Deep. – simbabque